0

我有一个简单的问题,虽然我无法解决这个问题。希望你能帮忙。我需要使用 for 循环制作三角形,从这 4 个练习中我不知道如何处理第三个练习。我以前没有使用过 Javascript,所以任何帮助将不胜感激。

在此处输入图像描述

 # # # # #
   # # # #
     # # #     <----- here is triangle i need to make. Just in case 
       # #
         #

var i;
var j;
for (i = 0; i <= 5; i++ )
{
document.write("</br>");
for ( j = 0; j < 6-i; j++ )
{
document.write( "&nbsp&nbsp" );
}
for ( j = 6-i; j <= 5; j++ )
{

document.write( "*" );
}
}

这是我在照片中为 D 编写的代码。我很抱歉我一开始没有添加它。

4

7 回答 7

4
for (let line = "*"; line.length < 8; line += "*")
  console.log(line);

这个问题出现在本书中:http ://eloquentjavascript.net

我不知道为什么谷歌上有这么糟糕的答案。

于 2018-05-14T16:06:12.823 回答
2
function leftTriangle(rows){
  let result = '';
  for(let i=rows;i>0;i--){
    if(i===rows) {
      result += '*'.repeat(i) + '\n';
    }else{
      let empty = rows-i
      result+= ' '.repeat(empty) + '*'.repeat(i)+ '\n'
    }
  }
  return result;
}

console.log(leftTriangle(5))
于 2019-03-14T17:01:48.407 回答
0

var rows = 5;
for (var i = rows; i--;) {
  var columns = 0;
  while (columns <= i) {
    document.write('#');
    columns++
  }
  document.write('<br />\n');
}

于 2020-07-18T04:12:25.173 回答
0

谢谢您的帮助。我做的。这太明显了,但不知何故我找不到它。多谢一次。这是我的做法。

 for (i = 5; i > 0; i--) {
         document.write("</br>");
        for (j = 0; j < 6 - i; j++) {
            document.write("&nbsp&nbsp");
        }
        for (j = 6 - i; j <= 5; j++) {

            document.write("*");
        }
    }

于 2016-10-27T22:09:48.830 回答
0

如果您正在寻找不同的东西,您也可以这样做。此代码适用于 7 行的三角形。

let size = 8;
let y = "#";
for (let x = 0; x < size; x++)
{
  console.log(y);
  y += "#";
}

// Second method

for (let i = 1; i < size;i++)
{
  let me ="#".repeat(`${i}`)
  console.log(me);
  
}

于 2022-01-07T17:16:47.757 回答
0

像这样的东西?

var rows = 5;
for (var i = rows; i--;) {
  var columns = 0;
  while (columns <= i) {
    document.write('#');
    columns++
  }
  document.write('<br />\n');
}

于 2016-10-27T20:33:27.740 回答
0

我确信有更好的解决方案(我想到的只是用空格左填充),但这是我从您自己的解决方案中创建的快速而肮脏的解决方案。

  for (var i = 0; i < 5; i++) {
    for (var j = 0; j < i; j++) {
      document.write("&nbsp;&nbsp;&nbsp;");
    }
    for (var j = 5; j > i; j--) {
      document.write("#");
      if (j > i + 1) document.write("&nbsp;");
    }
    document.write('<br/>')
  }

https://js.do/code/diamondsinthesky

于 2016-10-27T22:08:50.037 回答