13579 3579 579 79 9
/**
* 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 * 2) - 1;
// Logic to print numbers
for(j=i; j<=N; j++, k+=2)
{
printf("%d", k);
}
printf("\n");
}
return 0;
}
Output
Enter N: 5
13579
3579
579
79
9
13579 3579 579 79 9
If you look to the pattern you will find that the pattern only consists of odd numbers. There are N rows (where N is the total number of rows to be printed). As you can see that each row contains exactly N - i + 1 columns (where i is the current row number).
For printing the numbers we will be using an extra variable lets say k that will keep track of next odd number. For each row odd number starts with the expression i * 2 - 1.
Step-by-step descriptive logic:
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.