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 understand the algorithm carefully. Then study the program line-by-line and compare it with the output. Finally, review the explanation section to strengthen your logic and programming understanding.
Rewrite the program without looking at the code. Modify values, conditions or logic and run it again. This helps improve confidence and strengthens coding skills much faster.