好的,所以我需要输出打印空心方块,我现在不知所措。我不想要答案,但我希望得到一些提示,以帮助我走上正轨。谢谢!
"use strict"
if (process.argv.length < 3) {
console.log("Not enough command-line arguments given.");
console.log("Usage: node lab13_4.js num");
process.exit();
}
var width = parseInt(process.argv[2]);
function makeLine(width) {
var L = "";
for(var w = 0; w < width; w += 1) { // repeated width many times
L = L + ".";
}
return L;
}
// print the line some number of times.
function printLines(line, howMany) {
// print the right number of lines
for (var i = 0; i < howMany; i += 1) { // repeated height many times
console.log(line);
}
}
for (var x = 0; x <= width; x += 1) {
var line = makeLine(x);
printLines(line, x);
}
答案 0 :(得分:0)
如果LENGTH是正方形边长。 您必须进行嵌套循环并检查边界条件。
for (var i = 0; i < LENGTH; i++) {
for (var j = 0; j < LENGTH; j++) {
if (i == 0 || i == LENGTH - 1 || j == 0 || j == LENGTH - 1) {
process.stdout.write("*")
} else {
process.stdout.write(" ")
}
}
process.stdout.write("\n")
}
&#13;
答案 1 :(得分:0)
我们正在寻找这样的解决方案:
*****
* *
* *
* *
*****
正方形的顶部和底部具有完整数量的星星。 中间的所有行在行的开头只有一颗星,在行尾只有一颗星。
我使用以下函数:
function square(input) {
// top line
console.log('*'.repeat(input));
// middle lines
for(let i = 1; i < input - 1; i++) {
console.log('*' + ' '.repeat(input-2) + '*');
}
// bottom line
console.log('*'.repeat(input));
};
square(5);
希望这是有道理的:)