Logic to print the given number pattern
1
21
321
4321
54321

C Programming Language / Loop control in C Language

34886

Program:

/**
 * 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

Explanation:

Logic to print the given number pattern

 

1
21
321
4321
54321

 

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 icolumns (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:

  1. To iterate through rows, run an outer loop from 1 to N (where N is the total number of rows to be printed).
  2. 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.


This Particular section is dedicated to Programs only. If you want learn more about C Programming Language. Then you can visit below links to get more depth on this subject.