# Python Program to Print Reverse Pyramid of Numbers

Are you new to the java programming language? We recommend you to ace up your practice session with these Basic Java Programs Examples

Given the number of rows of the pyramid, the task is to print a Reverse Pyramid of Numbers in C, C++, and Python.

Examples:

Example1:

Input:

Given number of rows = 10

Output:

1
2 1
3 2 1
4 3 2 1
5 4 3 2 1
6 5 4 3 2 1
7 6 5 4 3 2 1
8 7 6 5 4 3 2 1
9 8 7 6 5 4 3 2 1

Example2:

Input:

Given number of rows = 6

Output:

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

## Program to Print Reverse Pyramid of Numbers in C,C++, and Python

### Method #1: Using For Loop (Static Input)

Approach:

• Give the number of rows as static input and store it in a variable.
• Loop from 1 to the number of rows using For loop.
• Loop from the parent loop iterator value to 0 in decreasing order using another For loop(Nested For Loop).
• Print the iterator value of the inner for loop.
• Print the Newline character after the end of the inner loop.
• The Exit of the Program.

1) Python Implementation

Below is the implementation:

# Give the number of rows as static input and store it in a variable.
numbrrows = 10
# Loop from 1 to the number of rows using For loop.
for m in range(1, numbrrows):
# Loop from the parent loop iterator value to 0 in decreasing order
# using another For loop(Nested For Loop).
for n in range(m, 0, -1):
# Print the iterator value of the inner for loop.
print(n, end=' ')
# Print the Newline character after the end of the inner loop.
print()


Output:

1
2 1
3 2 1
4 3 2 1
5 4 3 2 1
6 5 4 3 2 1
7 6 5 4 3 2 1
8 7 6 5 4 3 2 1
9 8 7 6 5 4 3 2 1

2) C++ Implementation

Below is the implementation:

#include <iostream>
using namespace std;

int main()
{

// Give the number of rows as static input and store it
// in a variable.
int numbrrows = 10;
// Loop from 1 to the number of rows using For loop.
for (int m = 1; m < numbrrows; m++) {
// Loop from the parent loop iterator value to 0 in
// decreasing order using another For loop(Nested
// For Loop).
for (int n = m; n > 0; n--) {
// Print the iterator value of the inner for
// loop.
cout << n << " ";
}
// Print the Newline character after the end of the
// inner loop.
cout << endl;
}

return 0;
}

Output:

1
2 1
3 2 1
4 3 2 1
5 4 3 2 1
6 5 4 3 2 1
7 6 5 4 3 2 1
8 7 6 5 4 3 2 1
9 8 7 6 5 4 3 2 1

3) C Implementation

Below is the implementation:

#include <stdio.h>

int main()
{

// Give the number of rows as static input and store it
// in a variable.
int numbrrows = 10;
// Loop from 1 to the number of rows using For loop.
for (int m = 1; m < numbrrows; m++) {
// Loop from the parent loop iterator value to 0 in
// decreasing order using another For loop(Nested
// For Loop).
for (int n = m; n > 0; n--) {
// Print the iterator value of the inner for
// loop.
printf("%d ", n);
}
// Print the Newline character after the end of the
// inner loop.
printf("\n");
}
return 0;
}

Output:

1
2 1
3 2 1
4 3 2 1
5 4 3 2 1
6 5 4 3 2 1
7 6 5 4 3 2 1
8 7 6 5 4 3 2 1
9 8 7 6 5 4 3 2 1

### Method #2: Using For Loop (User Input)

Approach:

• Give the number of rows as user input and store it in a variable.
• Loop from 1 to the number of rows using For loop.
• Loop from the parent loop iterator value to 0 in decreasing order using another For loop(Nested For Loop).
• Print the iterator value of the inner for loop.
• Print the Newline character after the end of the inner loop.
• The Exit of the Program.

1) Python Implementation

Give the number of rows as user input using int(input()) and store it in a variable.

Below is the implementation:

# Give the number of rows as user input using int(input()) and store it in a variable.
numbrrows = int(input('Enter some random number of rows = '))
# Loop from 1 to the number of rows using For loop.
for m in range(1, numbrrows):
# Loop from the parent loop iterator value to 0 in decreasing order
# using another For loop(Nested For Loop).
for n in range(m, 0, -1):
# Print the iterator value of the inner for loop.
print(n, end=' ')
# Print the Newline character after the end of the inner loop.
print()


Output:

Enter some random number of rows = 6
1
2 1
3 2 1
4 3 2 1
5 4 3 2 1

2) C++ Implementation

Give the number of rows as user input using cin and store it in a variable.

Below is the implementation:

#include <iostream>
using namespace std;

int main()
{

// Give the number of rows as user input using
// cin and store it in a variable.
int numbrrows;
cin >> numbrrows;
// Loop from 1 to the number of rows using For loop.
for (int m = 1; m < numbrrows; m++) {
// Loop from the parent loop iterator value to 0 in
// decreasing order using another For loop(Nested
// For Loop).
for (int n = m; n > 0; n--) {
// Print the iterator value of the inner for
// loop.
cout << n << " ";
}
// Print the Newline character after the end of the
// inner loop.
cout << endl;
}

return 0;
}

Output:

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

3) C Implementation

Give the number of rows as user input using scanf and store it in a variable.

Below is the implementation:

#include <stdio.h>

int main()
{

// Give the number of rows as user input using scanf and
// store it in a variable.
int numbrrows;
scanf("%d", &numbrrows);
// Loop from 1 to the number of rows using For loop.
for (int m = 1; m < numbrrows; m++) {
// Loop from the parent loop iterator value to 0 in
// decreasing order using another For loop(Nested
// For Loop).
for (int n = m; n > 0; n--) {
// Print the iterator value of the inner for
// loop.
printf("%d ", n);
}
// Print the Newline character after the end of the
// inner loop.
printf("\n");
}
return 0;
}

Output:

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

Related Programs: