如何打印星形图案?

时间:2017-11-06 10:14:24

标签: javascript

我想使用JavaScript打印以下星形图案:

***** 
 ***
  *
 ***
*****

我正在尝试这个代码,我正在从三角形开始:

for (i = 3; i >= 1; i--) {
  /* Printing spaces */
  for (j = 0; j <= 3 - i; j++) {
    document.write("&nbsp");
  }
  /* Printing stars */
  k = 0;
  while (k != (2 * i - 1)) {
    document.write("*");
    k++;
  }

  document.write("<br/>")
}

3 个答案:

答案 0 :(得分:0)

试试这段代码

i==1内创建新模式后

for (i = 3; i >= 1; i--) {
  /* Printing spaces */
  for (j = 0; j <= 3 - i; j++) {
    document.write("&nbsp");
  }
  /* Printing stars */
  k = 0;
  while (k != (2 * i - 1)) {
    document.write("*");
    k++;
  }

  document.write("<br/>")
  if (i == 1) {
    for (t = 2; t <= 3; t++) {

      for (j = 0; j <= 3 - t; j++) {
        document.write("&nbsp");
      }
      /* Printing stars */
      k = 0;
      while (k != (2 * t - 1)) {
        document.write("*");
        k++;
      }
      document.write("<br/>")
    }
  }
}

答案 1 :(得分:0)

尝试此代码:-

在此我们使用外循环和内循环。

  var i, j;
  //outer loop
  for(i=1; i <= 5; i++)
   {
   //inner loop
    for(j=1; j<=i; j++)
   {
     document.write('*');
    }
     document.write('<br/>');
   }

迭代:-

i     j(Repeat)
1     1
2     2
3     3
4     4
5     5

答案 2 :(得分:0)

const n = 5
for (var i = 0; i < n; i++) {
    var star = '';
    for (var j = 0; j < n - i; j++) {
        star += ' ';
    }
    for (var k = 0; k < i; k++) {
        star += '* ';
    }
    console.log(star);
}
for (var i = 0; i < n; i++) {
    var star = '';
    for (var b = 0; b < i; b++) {
        star += ' ';
    }
    for (var a = 0; a < n - i; a++) {
        star += '* ';
    }
    console.log(star);
}