js打印图形
1. js绘画金字塔
思想:先画n-i个空格,再画2*i-1个*号,再画n-i个空格(此处可以省略),一行画完之后换行;循环下一行(先判断每行的空格数和*号与行数间的关系)
var n=window.prompt();
for(var i=1;i<=n;i++){
for(var j=1;j<=n-i;j++){
document.write(" ");
}
for(var j=1;j<=2*i-1;j++){
document.write("*");
}
document.write("<br/>");
}
2. js绘画空心金字塔
思想:先画n-i个空格,再画*号,判断j是否处于首末位置,是的话画*,否则画空格,同时最后一行全*
var n=window.prompt();
for(var i=1;i<=n;i++){
for(var j=1;j<=n-i;j++){
document.write(" ");
}
for(var j=1;j<=2*i-1;j++){
if(i==n){
document.write("*");
}else if(j=1||j==(2*i-1)){
document.write("*");
}else{
document.write(" ");
}
}
document.write("<br/>");
}
3. js绘画三角形
思想:i行i个*号,注意换行
for(var i=1;i<=n;i++){
for(h=1;h<=i;h++){
document.write("*");
}
document.write("<br/>");
}
4.js绘画菱形
思想:先画菱形上半部分(注意空格、*号和行间的关系,注意换行)再画菱形下半部分
//菱形上部分,此处的n表示*号最多的行数
for(var i=1;i<=n;i++){
for(var j=1;j<=n-i;j++){
document.write(" ");
}
for(var j=1;j<=2*i-1;j++){
document.write("*");
}
for(var j=1;j<=n-i;j++){
document.write(" ");
}
document.write("<br/>");
}
//菱形下半部分
for(var i=1;i<=n;i++){
for(var j=1;j<=i;j++){
document.write(" ");
}
for(var j=1;j<=(2*(n-i)-1);j++){
document.write("*");
}
//for(var j=1;j<=2*i-1;j++){document.write(" ");}
document.write("<br/>");
}
或者
//此处的n为总行数、
var m=(n+1)/2;
for(var i=1;i<=m;i++){
for(var j=1;j<=m-i;j++){
document.write(" ");
}
for(var j=1;j<=2*i-1;j++){
document.write("*");
}
for(var j=1;j<=m-i;j++){
document.write(" ");
}
document.write("<br/>");
}
//菱形下半部分
for(var i=m+1;i<=n;i++){
for(var j=1;j<=i-m;j++){
document.write(" ");
}
for(var j=1;j<=(2*(n-i+1)-1);j++){
document.write("*");
}
document.write("<br/>");
}
5. js绘画空心菱形
思想:先画菱形上半部分(注意空格、*号和行间的关系,注意换行)再画菱形下半部分
var m=(n+1)/2;
for(var i=1;i<=m;i++){
for(var j=1;j<=m-i;j++){
document.write(" ");
}
for(var j=1;j<=2*i-1;j++){
if(j==1||j=2*i-1){
document.write("*");
}else{
document.write(" ");
}
}
document.write("<br/>");
}
//菱形下半部分
for(var i=m+1;i<=n;i++){
for(var j=1;j<=i-m;j++){
document.write(" ");
}
for(var j=1;j<=(2*(n-i+1)-1);j++){
if(j==1||j==2*(n-i+1)-1){
document.write("*");
}else{
document.write(" ");
}
}
document.write("<br/>");
}