C++ Program to Create Pyramid and Pattern
In this example, we will learn a Program to print half pyramid, pyramid, inverted pyramid, Pascal's Triangle and Floyd's triangle in C++ Programming using control statements..
To understand this example, you should have the knowledge of the following C++ programming topics:
- C++ if, if...else and Nested if...else
- C++ For Loop
- C++ while and do-while Loop
- C++ break and Continue Loop
Programs to print triangles using *, numbers and characters
Example 1: Program to print half pyramid using *
#include <iostream>
using namespace std;
int main()
{
int rows;
cout << "Enter number of rows: ";
cin >> rows;
for(int i = 1; i <= rows; ++i)
{
for(int j = 1; j <= i; ++j)
{
cout << "* ";
}
cout << "\n";
}
return 0;
}
Output
* * * * * * * * * * * * * * *
Example 2: Program to print half pyramid a using numbers
#include <iostream>
using namespace std;
int main()
{
int rows;
cout << "Enter number of rows: ";
cin >> rows;
for(int i = 1; i <= rows; ++i)
{
for(int j = 1; j <= i; ++j)
{
cout << j << " ";
}
cout << "\n";
}
return 0;
}
Output
1 1 2 1 2 3 1 2 3 4 1 2 3 4 5
Example 3: Program to print half pyramid using alphabets
#include <iostream>
using namespace std;
int main()
{
char input, alphabet = 'A';
cout << "Enter the uppercase character you want to print in the last row: ";
cin >> input;
for(int i = 1; i <= (input-'A'+1); ++i)
{
for(int j = 1; j <= i; ++j)
{
cout << alphabet << " ";
}
++alphabet;
cout << endl;
}
return 0;
}
Output
A B B C C C D D D D E E E E E
Programs to print inverted half pyramid using * and numbers
Example 4: Inverted half pyramid using *
#include <iostream>
using namespace std;
int main()
{
int rows;
cout << "Enter number of rows: ";
cin >> rows;
for(int i = rows; i >= 1; --i)
{
for(int j = 1; j <= i; ++j)
{
cout << "* ";
}
cout << endl;
}
return 0;
}
Output
* * * * * * * * * * * * * * *
Example 5: Inverted half pyramid using numbers
#include <iostream>
using namespace std;
int main()
{
int rows;
cout << "Enter number of rows: ";
cin >> rows;
for(int i = rows; i >= 1; --i)
{
for(int j = 1; j <= i; ++j)
{
cout << j << " ";
}
cout << endl;
}
return 0;
}
Output
1 2 3 4 5 1 2 3 4 1 2 3 1 2 1
Programs to display pyramid and inverted pyramid using * and digits
Example 6: Program to print full pyramid using *
#include <iostream>
using namespace std;
int main()
{
int space, rows;
cout <<"Enter number of rows: ";
cin >> rows;
for(int i = 1, k = 0; i <= rows; ++i, k = 0)
{
for(space = 1; space <= rows-i; ++space)
{
cout <<" ";
}
while(k != 2*i-1)
{
cout << "* ";
++k;
}
cout << endl;
}
return 0;
}
Output
* * * * * * * * * * * * * * * * * * * * * * * * *
Example 7: Program to print pyramid using numbers
#include <iostream>
using namespace std;
int main()
{
int rows, count = 0, count1 = 0, k = 0;
cout << "Enter number of rows: ";
cin >> rows;
for(int i = 1; i <= rows; ++i)
{
for(int space = 1; space <= rows-i; ++space)
{
cout << " ";
++count;
}
while(k != 2*i-1)
{
if (count <= rows-1)
{
cout << i+k << " ";
++count;
}
else
{
++count1;
cout << i+k-2*count1 << " ";
}
++k;
}
count1 = count = k = 0;
cout << endl;
}
return 0;
}
Output
1 2 3 2 3 4 5 4 3 4 5 6 7 6 5 4 5 6 7 8 9 8 7 6 5
Example 8: Inverted full pyramid using *
#include <iostream>
using namespace std;
int main()
{
int rows;
cout << "Enter number of rows: ";
cin >> rows;
for(int i = rows; i >= 1; --i)
{
for(int space = 0; space < rows-i; ++space)
cout << " ";
for(int j = i; j <= 2*i-1; ++j)
cout << "* ";
for(int j = 0; j < i-1; ++j)
cout << "* ";
cout << endl;
}
return 0;
}
Output
* * * * * * * * * * * * * * * * * * * * * * * * *
Example 9: Print Pascal's triangle
#include <iostream>
using namespace std;
int main()
{
int rows, coef = 1;
cout << "Enter number of rows: ";
cin >> rows;
for(int i = 0; i < rows; i++)
{
for(int space = 1; space <= rows-i; space++)
cout <<" ";
for(int j = 0; j <= i; j++)
{
if (j == 0 || i == 0)
coef = 1;
else
coef = coef*(i-j+1)/j;
cout << coef << " ";
}
cout << endl;
}
return 0;
}
Output
1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1
Example 10: Print Floyd's Triangle.
#include <iostream>
using namespace std;
int main()
{
int rows, number = 1;
cout << "Enter number of rows: ";
cin >> rows;
for(int i = 1; i <= rows; i++)
{
for(int j = 1; j <= i; ++j)
{
cout << number << " ";
++number;
}
cout << endl;
}
return 0;
}
Output
1 2 3 4 5 6 7 8 9 10
Next Example
We hope that this Example helped you develop better understanding of the concept of "Display Pyramids and Patterns" in C++.
Keep Learning : )
In the next Example, we will learn about C++ Program to Create a Simple Calculator
.