5
44
333
2222
11111
/**
* C program to print number pattern
* www.atnyla.com
*/
#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<=N-i; j++)
{
printf(" ");
}
// Logic to print numbers
for(j=1; j<=i; j++)
{
printf("%d", (N - i + 1));
}
printf("\n");
}
return 0;
}
----5
---44
--333
-2222
11111
5 44 333 2222 11111
Now once you are done with the previous number pattern, doing this wouldn't be much trouble. As it only needs to add trialing spaces before the number gets printed. Now if you hover mouse to the pattern you can actually count the spaces per row and can define a logic to print spaces. Actually, each row contains N - spaces (where N is the total number of rows to be printed and i is the current row number). Hence, the descriptive logic of printing space is:
Let's implement this the code.
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.