Number pattern 22 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 for 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 get the logic of this pattern I recommend you to carefully have an eye to the pattern. There are N number of rows (where N is the total number of rows to be printed) and each row contains exactly i number of columns (where i is the current row number). Now for each column the value gets printed is N - i + 1.
Step-by-step descriptive logic:

  1. To iterate through rows, run an outer loop from 1 to N.
  2. To print the columns, run an inner loop from 1 to i (where i is the current row number). Inside this loop print the value of N - i + 1.

And you are done, lets write down its code.

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", (N - i + 1));
        }

        printf("\n");
    }

    return 0;
}

Output

Enter N: 5
5
44
333
2222
11111

Logic to print the given number pattern 2

Now once you are done with the first number pattern, doing this wouldn't be much trouble. As it only needs to add trialing spaces before the number gets printed. Now if you hover mouse to the pattern you can actually count the spaces per row and can define a logic to print spaces. Actually each row contains N - i spaces (where N is the total number of rows to be printed and i is the current row number). Hence, the descriptive logic of printing space is:

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

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

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

        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>