This shot discusses how to make a diamond pattern in C++ with stars or * (asterisks).
We will use the
Let’s look at the below image to understand this better.
To generate the pattern, as shown above, we will use two nested for loops.
The first for loop will generate the upper half of the diamond, while the second for loop will generate the bottom half of the diamond.
Let’s look at the below code snippet to understand this better. The program requires a number as an input to generate a diamond accordingly.
#include <iostream>using namespace std;int main() {int number, space = 1;cin >> number;space = number - 1;for (int i = 1; i <= number; i++) {for (int j = 1; j <= space; j++)cout << " " ;space--;for (int j = 1; j <= 2*i-1; j++)cout << "*" ;cout << endl;}space = 1;for (int i = 1; i <= number-1; i++) {for (int j = 1; j <= space; j++)cout << " ";space++;for (int j = 1; j <= 2*(number-i)-1; j++)cout << "*";cout << endl;}return 0;}
Enter the input below
In line 6, we initialize the number and space variables.
In line 7, we use cin >> to take the input as number.
From lines 11 to 19, we initialize nested for loops that use * to build the upper half of the diamond, i.e., the solid full pyramid.
From lines 22 to 30, we initialize a second nested for loop that uses * to generate the lower half of the diamond, i.e., the inverted solid full pyramid.
In this way, we have learned to generate a diamond pattern with stars * in C++.
We can also use numbers, alphabets, or any other characters to generate this pattern.