如何使用for循环javascript制作三角形

Posted

技术标签:

【中文标题】如何使用for循环javascript制作三角形【英文标题】:How to make a triangle using for loop javascript 【发布时间】:2016-10-27 20:07:45 【问题描述】:

我有一个简单的问题,虽然我无法解决这个问题。希望你能帮忙。我需要使用 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 编写的代码。 很抱歉我一开始没有添加它。

【问题讨论】:

你需要添加你到目前为止尝试过的东西 Check out the how to ask... 【参考方案1】:
for (let line = "*"; line.length < 8; line += "*")
  console.log(line);

本书中有这个问题:http://eloquentjavascript.net

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

【讨论】:

【参考方案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))

【讨论】:

【参考方案3】:

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

  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

【讨论】:

YES))) 我认为您的解决方案比我的要好得多。非常感谢。【参考方案4】:

这样的?

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

【讨论】:

感谢您的回复。不幸的是,它没有帮助,因为它给出了我已经制作的三角形。上图中的三角形 B。【参考方案5】:

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

 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("*");
        
    

【讨论】:

【参考方案6】:

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

【讨论】:

从问题中生成三角形 (A),而不是三角形 (C)​​,这正是 OP 正在寻求帮助的三角形【参考方案7】:

如果您正在寻找不同的东西,您也可以这样做。 此代码适用于 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);
  

【讨论】:

看来你没有解决这个问题......海报问如何产生第三个结果,而不是第一个或第二个。 如果您有新问题,请点击 按钮提出问题。如果有助于提供上下文,请包含指向此问题的链接。 - From Review

以上是关于如何使用for循环javascript制作三角形的主要内容,如果未能解决你的问题,请参考以下文章

具有单一功能的 JavaScript 三角形

Java如何用for循环实现以下图形 * *** ***** ******* ***** *** *

怎么用javascript for循环语句输出直角靠右边的三角形图案

请问c++如何用循环语句打印下面的图形?

我如何在F#中制作一个for循环来扫描JSON。

如何在VS中用for循环输出2到100中所以素数?