Print mirror numbers triangle in JS

I need to create java script program who print mirror numbers triangle from N. I tested some ways and get the 50% from task:

let n = 5;
function generatePyramid(num) {
    let number = '';

    for (let i = 1; i <= num; i += 1) {
        console.log(number += i);
    }
}
generatePyramid(n);

This code print triangle only from 1 to 5. How to print triangle from 5 to 1?

Also my print need to be with space between 1 2 3 4 5... not 12345.

I have similar code from java with array, but can't transform it to JS: https://pastebin.com/9dqqE8J6

This is the final output:

1
1 2
1 2 3
1 2 3 4
1 2 3 4 5
1 2 3 4
1 2 3
1 2
1

Upvotes: 0

Views: 747

Answers (2)

Naren P
Naren P

Reputation: 214

<script>
let n = 5;
function generatePyramid(num) {
    let number = '';

    for (let i = 1; i <= num; i += 1) {
    for (let j = 1; j <= i; j += 1) 
        document.writeln(j+" ");
        document.writeln("<br>")
    }

for (let i = 4; i >= 1; i -= 1) {
    for (let j = 1; j <= i; j += 1) 
        document.writeln(j+" ");
        document.writeln("<br>")
    }

}
generatePyramid(n);
</script>

Try This using the same code but i have taken another loop named j

Upvotes: 2

CertainPerformance
CertainPerformance

Reputation: 370989

One option would be to add a while loop that slices off characters from the number string until it's empty:

let n = 5;
function generatePyramid(num) {
    let number = '';
    for (let i = 1; i <= num; i += 1) {
        console.log(number += i);
    }
    while (number.length > 1) {
      number = number.slice(0, number.length - 1);
      console.log(number);
    }
}
generatePyramid(n);

To add spaces as well, one option is:

let n = 5;
const log = str => console.log(str.replace(/.(?!$)/g, '$& '))
function generatePyramid(num) {
    let number = '';
    for (let i = 1; i <= num; i += 1) {
        log(number += i);
    }
    while (number.length > 1) {
      number = number.slice(0, number.length - 1);
      log(number);
    }
}
generatePyramid(n);

Upvotes: 3

Related Questions