***** ***** ***** ***** *****
/**
* C program to print Rhombus star pattern series
* atnyla.com
*/
#include <stdio.h>
int main()
{
int i, j, rows;
/* Input number of rows from user */
printf("Enter rows: ");
scanf("%d", &rows);
for(i=1; i<=rows; i++)
{
/* Print trailing spaces */
for(j=1; j<=rows - i; j++)
{
printf(" ");
}
/* Print stars after spaces */
for(j=1; j<=rows; j++)
{
printf("*");
}
/* Move to the next line */
printf("\n");
}
return 0;
}
Enter rows: 5
*****
*****
*****
*****
*****
***** ***** ***** ***** *****
Before I decode the logic of this pattern, have a close look of the pattern. Place your mouse cursor on to the pattern, to count spaces. Try to decode the logic of given pattern.
If you remove trailing spaces the pattern becomes a simple square star pattern of N rows and columns. You only need to add logic of printing spaces with the existing logic of square star pattern.
The pattern consists N - i spaces per row (where i is the current row number).
Step by step descriptive logic to print rhombus star pattern
for(i=1; i<=rows; i++).rows - i. Construct a loop with structure for(j=1; j<=rows - i; j++). Inside this loop print space.for(j=1; j<=rows; j++). Inside this loop print star.First read the algorithm, then study the program code line by line. After that, compare the code with the output and finally go through the explanation. This approach helps learners understand both the logic and the implementation properly.
After understanding this example, try to rewrite the same program without looking at the code. Then change some values or logic and run it again. This helps improve confidence and keeps learners engaged on the page for longer.