Learn Introductory JavaScript by Building a Pyramid Generator - Step 100

Tell us what’s happening:

Because you are going to loop in the opposite direction, your loop needs to run while i is greater than 0. You can use the greater than operator > for this.

Set your loop’s condition to run when i is greater than 0.

Your code so far

const character = "#";
const count = 8;
const rows = [];

function padRow(rowNumber, rowCount) {
  return " ".repeat(rowCount - rowNumber) + character.repeat(2 * rowNumber - 1) + " ".repeat(rowCount - rowNumber);
}

// TODO: use a different type of loop
/*for (let i = 1; i <= count; i++) {
  rows.push(padRow(i, count));
}*/

/*while (rows.length < count) {
  rows.push(padRow(rows.length + 1, count));
}*/


// User Editable Region

for (let i = count; i > 0; i--; false; false) {

}

// User Editable Region


let result = ""

for (const row of rows) {
  result = result + row + "\n";
}

console.log(result);

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36 Edg/137.0.0.0

Challenge Information:

Learn Introductory JavaScript by Building a Pyramid Generator - Step 100

this is not correct syntax for a loop, 5 statements are too much

Hi there, welcome to the community! :blush:

A for loop follows this structure:

for (initialization; condition; afterthought) {
  // Code to execute
}

But your loop has five parts, which is not valid. A for loop should only have three sections. sSo, According to the lesson:

Because you are going to loop in the opposite direction, your loop needs to run while i is greater than 0 . You can use the greater than operator > for this.

So you only need to add the condition part, no extra elements needed. Please recheck the lesson and update your code accordingly.

This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.