54321
5432
543
54
5
/**
* C program to print number pattern
*/
#include <stdio.h>
int main()
{
int i, j, N;
printf("Enter N: ");
scanf("%d", &N);
for(i=1; i<=N; i++)
{
// Logic to print spaces
for(j=1; j<i; j++)
{
printf(" ");
}
// Logic to print numbers
for(j=N; j>=i; j--)
{
printf("%d", j);
}
printf("\n");
}
return 0;
}
54321
5432
543
54
5
54321
5432
543
54
5
Once you get done with the first number pattern, then this wouldn't be much difficult as it is same as the pattern we just did except of trailing spaces. We only need to add the logic of printing spaces just before the number gets printed. If you hover mouse to the pattern above you can see or count total number of spaces per row and can easily think about the logic to print spaces. Here spaces are arranged in ascending order fashion i.e. first row contains 0 spaces, second row contains 1 space and so on last row contains 4 space. Total number of spaces per row is i - 1 (where i is the current row number).
Step-by-step descriptive logic to print spaces:
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.