Number Triangle

Easy Patterns
Print a triangle where each row i shows the numbers 1 to i.

Sample input

4

Sample output

1 1 2 1 2 3 1 2 3 4

Solution

n = 4
for i in range(1, n + 1):
    print(*range(1, i + 1))
const n = 4;
for (let i = 1; i <= n; i++) {
  const row = [];
  for (let j = 1; j <= i; j++) row.push(j);
  console.log(row.join(" "));
}
import java.util.stream.Collectors;
import java.util.stream.IntStream;

public class Main {
    public static void main(String[] args) {
        int n = 4;
        for (int i = 1; i <= n; i++) {
            System.out.println(IntStream.rangeClosed(1, i).mapToObj(String::valueOf).collect(Collectors.joining(" ")));
        }
    }
}
fun main() {
    val n = 4
    for (i in 1..n) {
        println((1..i).joinToString(" "))
    }
}
let n = 4
for i in 1...n {
    print((1...i).map(String.init).joined(separator: " "))
}
void main() {
  int n = 4;
  for (var i = 1; i <= n; i++) {
    print(List.generate(i, (j) => j + 1).join(' '));
  }
}
#include <iostream>
using namespace std;

int main() {
    int n = 4;
    for (int i = 1; i <= n; i++) {
        for (int j = 1; j <= i; j++) {
            cout << j;
            if (j < i) cout << " ";
        }
        cout << endl;
    }
    return 0;
}
#include <stdio.h>

int main() {
    int n = 4;
    for (int i = 1; i <= n; i++) {
        for (int j = 1; j <= i; j++) {
            printf("%d", j);
            if (j < i) printf(" ");
        }
        printf("\n");
    }
    return 0;
}