Number pattern 24 in C

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 loop in C program.

Example

Input

Input N: 5

Output

Required knowledge

Basic C programming, Loop

Logic to print the given number pattern 1

To understand the logic of given pattern, I recommend you to have a careful look of the pattern for a minute. Now talking about the pattern, there are N number of rows (where N is given by user). Each row contains exactly N - i + 1 number of columns (where i is the current row number). And for each row in each column the value of j gets printed (where j is the current column number).
The step-by-step descriptive logic of the given pattern:

  1. To iterate through rows, start an outer loop from 1 to N.
  2. To print the numbers, start an inner loop from 1 to N - i + 1. Inside this loop print the value of j.

Lets now code the solution.

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<=N-i+1; j++)
        {
            printf("%d", j);
        }

        printf("\n");
    }

    return 0;
}

Output

Enter N: 5
12345
1234
123
12
1

Logic to print the given number pattern 2

Once you got the logic of first 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.

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

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

        printf("\n");
    }

    return 0;
}

Happy coding 😉

About Pankaj

Pankaj Prakash is the founder, editor and blogger at Codeforwin. He loves to learn new techs and write programming articles especially for beginners. He works at Vasudhaika Software Sols. as a Software Design Engineer and manages Codeforwin. In short Pankaj is Web developer, Blogger, Learner, Tech and Music lover.

Follow on: Facebook | Twitter | Google | or

Comments and discussion
Have a doubt, write here. I will help my best.
Before commenting you must escape your source code before commenting. Paste your source code inside
<pre><code> ----Your Source Code---- </code></pre>