我需要Javascript代码才能使用只有2个for循环的单个程序打印所有星形图案。我尝试了以下代码,但它只打印菱形。
var spaces = " ";
var rows = "* ";
while(rows.length < 200) {
spaces += spaces; // doubles length each time
rows += rows; // ditto
}
function diamond(n) {
n = parseInt(n, 10);
var i, s;
// top: 1 to n
console.log("<pre>");
for(i = 1; i <= n; ++i) {
// write n-i spaces:
console.log(spaces.substring(0,n-i));
// then write i asterisk+space sets:
console.log( rows.substring(0,i+i) + "\n");
}
// bottom: n-1 down to 1
for(i = n-1; i >= 1; --i) {
// write n-i spaces:
console.log( spaces.substring(0,n-i) );
// then write i asterisk+space sets:
console.log( rows.substring(0,i+i) + "\n" );
}
console.log("</pre>");
}
diamond(9);
答案 0 :(得分:1)
您可以尝试
let star = "";
for(let i=1; i<=50; i++) {
for(let j=1; j<=i; j++) {
star += "*";
}
star += "\n";
}
console.log(star);
答案 1 :(得分:0)
嗯,有很多明星模式,你没有指定你感兴趣的那些。 无论如何,如果您可以阅读简单的C代码并将其翻译为Javascript,这里有一个9星模式的链接,您可以尝试
http://cbasicprogram.blogspot.it/2012/03/star-patterns.html
星图模式算法通常在每种语言中都很容易理解,因为它们被用作初学练习。如果您没有找到与JS相关的任何内容,请尝试使用其他语言进行搜索。