如何用javascript制作金字塔?
我试着制作长度为4的金字塔 这是我尝试过的代码如何用javascript制作金字塔?,javascript,loops,Javascript,Loops,我试着制作长度为4的金字塔 这是我尝试过的代码 console.log("-----------------------") function middle(){ for (i = 0; i < 4; i++){ var output = ''; for(j=1; j < 4 - i; j++) output += ' '; for (k =1; k <=(2*i+1);
console.log("-----------------------")
function middle(){
for (i = 0; i < 4; i++){
var output = '';
for(j=1; j < 4 - i; j++)
output += ' ';
for (k =1; k <=(2*i+1); k++)
output += '*';
console.log(output);
}
}
middle();
但我想实现这样的产出
您可能使用的是等距字体 这意味着所有字符都具有相同的宽度 这在计算机编程中很方便,因为当事情排成一行时,它更具可读性 这意味着不可能在两个字符之间设置“中间”字符,除非使用空格,如:
*
* *
* * *
在这种情况下,只需调整循环以在正确的位置包含空格。您可能使用的是单间距字体 这意味着所有字符都具有相同的宽度 这在计算机编程中很方便,因为当事情排成一行时,它更具可读性 这意味着不可能在两个字符之间设置“中间”字符,除非使用空格,如:
*
* *
* * *
在这种情况下,只需调整循环以在正确的位置包含空格。无需使用循环来生成多个字符-改用String的repeat函数: 功能中间{ 设s=; 对于设i=4;i>=0;i-{ s+=.repeati+*.repeat4-i+\n; } 返回s; }
控制台。中间 无需使用循环来生成多个字符-请改用String的repeat函数: 功能中间{ 设s=; 对于设i=4;i>=0;i-{ s+=.repeati+*.repeat4-i+\n; } 返回s; }
控制台。中间 由于您的问题没有说明这必须使用控制台输出,这里有一个版本,输出为HTML/网页 const pyramid=document.querySelector'pyramid';
对于设l=1;l因为您的问题没有说明这必须使用控制台输出,这里有一个版本,输出是HTML/网页 const pyramid=document.querySelector'pyramid';
对于设l=1;这就是你需要的:- const renderTree==>{ const noOfColums=Numberdocument.getElementByIdinputNumber.value; 设finalTree=; 常数星=*; 常量空间=;
对于让rowNumber=1;rowNumber这是您需要的:- const renderTree==>{ const noOfColums=Numberdocument.getElementByIdinputNumber.value; 设finalTree=; 常数星=*; 常量空间=;
对于let rowNumber=1;rowNumber,如果这仅限于控制台输出,则实际上不能。因为控制台输出通常是固定宽度的字体大小。如果您的输出可以是HTML,则这将容易得多。不过,有一个想法,如果这是控制台输出,请找到使用2个字符的内容,…例如…,然后您可以有一半的空间将允许您的系统金字塔。如果这仅限于控制台输出,您实际上不能。因为控制台输出通常是固定宽度的字体大小。如果您的输出可以是HTML,那么这将容易得多。不过,有一个想法,如果这是控制台输出,请找到使用2个字符的内容,…例如…,然后您可以有一半的空间将允许你的系统金字塔。按照OP的建议将其更新为4,然后,我认为,这是一种时髦的方式输出到页面!无论如何,我已经给了它一个大拇指。@ATD good point,更新。我使用了他的图片,但他在他的问题中陈述了4。按照OP的建议将其更新为4,然后,我认为,这是一种时髦的方式输出到页面!我已经更新了“不管怎么说,大拇指已经竖起来了!”ATD good point,更新了。我用了他的照片,但他在问题中陈述了4。