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 in C program using loop.
Required knowledge
Logic to print the given number pattern 1
Logic to this pattern is pretty simple; to understand the logic, first have a careful eye on to the pattern for a minute and think the logic. You can observe that there are N number of rows (where N is the total number of rows to be printed). Each row exactly contains i number of columns (where i is the current row number). And for each row in each column j gets printed (where j is the current column number).
The step-by-step descriptive logic is:
- To iterate through rows, run an outer loop from 1 to N.
- To print the number, run an inner loop from 1 to i (where i is the current row number). Inside this loop print the value of j (where j is the current column number).
Lets 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=1; j<=i; j++)
{
printf("%d", j);
}
printf("\n");
}
return 0;
}
Output
Enter N: 5 1 12 123 1234 12345
Logic to print the given number pattern 2
The above pattern is very much similar to the first pattern we just printed. We only need to add logic to print trailing spaces that should be printed before the number gets printed.
If you hover your mouse on to the pattern you can see or count total spaces per row and can also think of logic to print the spaces. If you can notice, there are exactly N – i spaces per row (where N is the total number of rows to be printed and i is the current row number.
The step-by-step descriptive logic to print spaces is:
- To print spaces, run an inner loop from 1 to N – i. Inside this loop print single blank space.
Lets now code this.
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=1; j<=i; j++)
{
printf("%d", j);
}
printf("\n");
}
return 0;
}
Happy coding 😉