Logic to print the given number pattern
12345
 1234
  123
   12
    1

C Programming Language / Loop control in C Language

7865

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 spaces
        for(j=1; j<i; j++)
        {
            printf(" ");
        }

        // Logic to print numbers
        for(j=1; j<=N-i+1; j++)
        {
            printf("%d", j);
        }

        printf("\n");
    }

    return 0;
}

Output:

12345
 1234
  123
   12
    1

Explanation:

Logic to print the given number pattern 

Once you got the logic of previous number pattern that we just printed, you can easily get the logic of this pattern. As it is almost similar to the first number pattern expect that it contains trailing spaces. Hence we only need to add the logic of printing trailing spaces to the first number pattern program.
To get the logic of this pattern just hover your mouse on the above pattern to see or count total spaces per row. There are total i - 1 spaces per row (where i is the current row number).
The step-by-step descriptive logic to print space:

  1. To print space, run an inner loop from 1 to i - 1. Inside this loop print single blank space.

Only this much you need to do. Lets implement this on code.


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.