Write a C program to print the given number pattern using loop. How to print the given triangular number pattern using for loop in C programming. Logic to print the given number pattern using for loop in C program.
Required knowledge
Logic to print the given number pattern 1
Before I discuss logic to print the given number pattern, I recommend you that have a close look to the pattern carefully for a couple of minutes. The above pattern consists of N rows (where N is the total number of rows to be printed). Each row contains i columns (where i is the current row number). To print the above pattern we will be using an extra variable say k that will keep the value which we need to print.
Step-by-step descriptive logic:
- To iterate through rows, run an outer loop from 1 to N.
- Inside the outer loop initialize k = i (where k is an extra variable which will hold the number which we need to print next and i is the current row number).
- To print the numbers, run an inner loop from 1 to i. Inside this loop print the value of k. Also increment the value of k after printing.
And you are done, lets implement this.
Program to print the given number pattern 1
/**
* 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 numbers
for(j=1; j<=i; j++, k++)
{
printf("%d", k);
}
printf("\n");
}
return 0;
}
Output
Enter N: 5 1 23 345 4567 56789
Logic to print the given number pattern 2
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 first 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 – i spaces per row (where i is the current row number).
Step-by-step description to print spaces:
- To print spaces, run an inner loop from i to N – 1. Inside this loop print single blank space.
Program to print the given number pattern 2
/**
* 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;
}
Happy coding 😉