做了一个作业,用JavaScript打印正倒直线,突然觉得自己还是逻辑有待加强训练啊
document.write("<h3>打印倒正金字塔直线</h3>");//打印一个h3标签,
内容是里边的文字
var i= 61;//定义金字塔的起始/截止宽度(百分比为单位)
while(i>0)//进行循环,当宽度大于0时,打印一个宽度为i的hr水平线,
并将i自减10个百分比
{ document.write("<hr width=" + i+"%/>");
i=i-10;
}
for(var j=11;j<70;j=j+10){//进行循环,对j赋以初值11,当j小于70
时打印一个宽度为j的hr水平线,并将i自增10个百分比
document.write("<hr width=" + j+"%/>");
}
如果不用while,用for循环有两种方案:
第一种——两个for循环
document.write("<h3>打印倒正金字塔直线</h3>");
for(var i=61;i>0;i-=10){//打印倒金字塔
document.write("<hr width=" + i+"%/>");
}
for(var j=11;j<70;j=j+10){//打印正金字塔
document.write("<hr width=" + j+"%/>");
}
第二种——一个for循环
document.write("<h3>打印倒正金字塔直线</h3>");
for(var i=61,j=-1;i<70;){//当i>=11时,i每次自减10,当i<11之后,
每次自增10,用j来控制10的正负
document.write("<hr width=" + i+"%/>");
if(i<11)
j=1;
i+=10*j;
}