# C Program For Printing Half Right Number Pyramid Pattern

• Last Updated : 09 Aug, 2022

Here, we will see a C program to print the 3 different number patterns. There are 3 number patterns covered using for loop and while loop with their respective explanation.

3 Different Number Patterns:

```1
2 3
4 5 6
7 8 9 10
11 12 13 14 15

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

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

## Pattern 1:

Input:

`n = 5`

Output:

```1
2 3
4 5 6
7 8 9 10
11 12 13 14 15  ```

### A. Using for loop

The first for loop is used to iterate the number of rows and the second for loop is used to repeat the number of columns. Then print the number and increment the number to print the next number.

## C

 `// C program to print number pyramid patterns using for loop``#include ` `int` `main()``{` `    ``int` `rows, columns, number = 1, n = 5;` `    ``// first for loop is used to identify number of rows``    ``for` `(rows = 0; rows <= n; rows++) {` `        ``// second for loop is used to identify number of``        ``// columns and here the values will be changed``        ``// according to the first for loop``        ``for` `(columns = 0; columns < rows; columns++) {` `            ``// printing number pattern based on the number``            ``// of columns``            ``printf``(``"%d "``, number);` `            ``// incrementing number at each column to print``            ``// the next number``            ``number++;``        ``}` `        ``// print the next line for each row``        ``printf``(``"\n"``);``    ``}``    ``return` `0;``}`

Output

```1
2 3
4 5 6
7 8 9 10
11 12 13 14 15 ```

### B. Using while loop

The while loops check the condition until the condition is false. If the condition is true then enter into the loop and execute the statements.

## C

 `// C program to print number``// patterns using while loop``#include ` `int` `main()``{` `    ``int` `rows = 1, columns = 0, n = 5;` `    ``// 1 value is assigned to the number``    ``// helpful to print the number pattern``    ``int` `number = 1;` `    ``// while loops check the condition and repeat``    ``// the loop until the condition is false``    ``while` `(rows <= n) {``        ``while` `(columns <= rows - 1) {` `            ``// printing number to get required pattern``            ``printf``(``"%d "``, number);` `            ``// incrementing columns value``            ``columns++;` `            ``// incrementing number value to``            ``// print the next number``            ``number++;``        ``}``        ``columns = 0;` `        ``// incrementing rows value``        ``rows++;``        ``printf``(``"\n"``);``    ``}``    ``return` `0;``}`

Output

```1
2 3
4 5 6
7 8 9 10
11 12 13 14 15 ```

## Pattern 2:

Input:

`n = 5`

Output:

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

### A. Using for loop

The first for loop is used to iterate the number of rows and the second for loop is used to repeat the number of columns. Then print the row number to get the required output.

## C

 `// C program to print number``// patterns using for loop``#include ` `int` `main()``{``    ``int` `rows, columns, n = 5;` `    ``// first for loop is used to``    ``// identify number of rows``    ``for` `(rows = 1; rows <= n; rows++) {` `        ``// second for loop is used to identify number of``        ``// columns and here the values will be changed``        ``// according to the first for loop``        ``for` `(columns = 1; columns <= rows; columns++) {` `            ``// printing number pattern based on the number``            ``// of rows``            ``printf``(``"%d "``, rows);``        ``}``        ``// print the next line for each row``        ``printf``(``"\n"``);``    ``}``    ``return` `0;``}`

Output

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

### B. Using while loop

The while loops check the condition until the condition is false. If the condition is true then enter into the loop and execute the statements.

## C

 `// C program to print number``// patterns using while loop``#include ``int` `main()``{` `    ``int` `rows = 1, columns = 0, n = 5;` `    ``// while loops check the condition and repeat``    ``// the loop until the condition is false``    ``while` `(rows <= n) {` `        ``while` `(columns <= rows - 1) {` `            ``// printing number to get required pattern``            ``printf``(``"%d "``, rows);` `            ``// incrementing columns value``            ``columns++;``        ``}``        ``columns = 0;` `        ``// incrementing rows value``        ``rows++;` `        ``printf``(``"\n"``);``    ``}``    ``return` `0;``}`

Output

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

## Pattern 3:

Input:

`n = 5`

Output:

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

### A. Using for loop:

The first for loop is used to iterate the number of rows and the second for loop is used to repeat the number of columns. Then print the column number to get the required output.

## C

 `// C program to print number``// patterns using while loop``#include ` `int` `main()``{``    ``int` `rows, columns, n = 5;` `    ``// second for loop is used to identify number of rows``    ``for` `(rows = 1; rows <= n; rows++) {` `        ``// second for loop is used to identify number of``        ``// columns and here the values will be changed``        ``// according to the first for loop``        ``for` `(columns = 1; columns <= rows; columns++) {` `            ``// print the number to be print based on the``            ``// number of columns``            ``printf``(``"%d "``, columns);``        ``}``        ``// print the next line``        ``printf``(``"\n"``);``    ``}``    ``return` `0;``}`

Output

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

### B. Using while loop

The while loops check the condition until the condition is false. If the condition is true then enter into a loop and execute the statements.

## C

 `// C program to print number``// patterns using while loop``#include ` `int` `main()``{``    ``int` `rows = 1, columns = 1, n = 6;``    ``int` `number = 1;` `    ``// while loops check the condition and repeat``    ``// the loop until the condition is false``    ``while` `(rows <= n) {` `        ``while` `(columns <= rows - 1) {` `            ``// printing number to get required pattern``            ``printf``(``"%d "``, columns);` `            ``// incrementing columns value``            ``columns++;``        ``}``        ``columns = 1;` `        ``// incrementing rows value``        ``rows++;``        ``printf``(``"\n"``);``    ``}``    ``return` `0;``}`

Output

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

Time complexity: O(n2) for given input n

Auxiliary space: O(1)

My Personal Notes arrow_drop_up