1
23
345
4567
56789
/**
* C program to print number pattern
*/
#include <stdio.h>
int main()
{
int i, j, k, N;
printf("Enter N: ");
scanf("%d", &N);
for(i=1; i<=N; i++)
{
k = i;
// Logic to print spaces
for(j=i; j<N; j++)
{
printf(" ");
}
// Logic to print numbers
for(j=1; j<=i; j++, k++)
{
printf("%d", k);
}
printf("\n");
}
return 0;
}
1
23
345
4567
56789
----1 ---23 --345 -4567 56789
If you look to the pattern you will notice that the pattern is similar to the pattern we just did except the trailing spaces. The logic to print the given pattern would be similar as the previous pattern we just did. We only need to add the logic of printing spaces before the number gets printed. If you can notice, there are N - ispaces per row (where i is the current row number).
Step-by-step description 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.