Write a C program to print the given number pattern using for loop. How to print the given triangular number pattern using for loop in C programming. Logic to print the given number pattern using loop in C program.
Required knowledge
Logic to print the given number pattern 1
To get the logic of the given pattern look to the pattern carefully for a minute. If you have noticed the pattern consists of N rows (where N is the total number of rows to be printed). Each row contains exactly i columns (where i is the current row number). Since the columns are printed in descending order hence, you must run the loop from i to 1 and print the value of j (where j is the current column number).
Step-by-step descriptive logic of the pattern:
- To iterate through rows, run an outer loop from 1 to N (where N is the total number of rows to be printed).
- To print the columns, run an inner loop from i to 1 in decreasing order (where i is the current row number). Since the values printed per row is in decreasing order hence we have used the loop from N-1 otherwise we can also use the loop from 1-N.
Inside this loop print the value of j (where j is the current column number).
Lets now implement this logic.
Program to print the given number pattern 1
/**
* 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 numbers
for(j=i; j>=1; j--)
{
printf("%d", j);
}
printf("\n");
}
return 0;
}
Output
Enter N: 5 1 21 321 4321 54321
Logic to print the given number pattern 2
Logic of the above pattern is simple and similar to the first number pattern that we just printed. In this pattern we only need to add logic of printing extra trailing spaces before the number gets printed. You can hover on to the pattern to see or count total spaces printed per row. The total number of spaces printed per row is N – i (where N is the total number of rows to be printed and i is the current row number).
Step-by-step descriptive logic of the printing spaces:
- To print spaces, run an inner loop from 1 to N – i. Inside this loop print single blank space.
Finally you are done, lets now implement this on code.
Program to print the given number pattern 2
/**
* 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<=N-i; j++)
{
printf(" ");
}
// Logic to print numbers
for(j=i; j>=1; j--)
{
printf("%d", j);
}
printf("\n");
}
return 0;
}
Happy coding 😉