Number pattern 27 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

Before I get into details about the number pattern I recommend you to have a close eye to the pattern carefully for a minute. The above pattern contains N rows (where N is the total number of rows to be printed). As you can see that the pattern printing is in descending order hence to make things easier we will iterate through the outer loop in descending order. Each row contains exactly i number of columns (where i is the current row number).
Step-by-step description to print the pattern:

  1. To iterate through rows, run an outer loop from N to 1. Note - Since the pattern is printed in descending order therefore we have initialized the loop from N and iterate till 1.
  2. To print the pattern, run an inner loop from N 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 on 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=N; i>=1; i--)
    {
        // Logic to print numbers
        for(j=N; j>=i; j--)
        {
            printf("%d", j);
        }

        printf("\n");
    }

    return 0;
}

Output

Enter N: 5
5
54
543
5432
54321

Logic to print the given number pattern 2

If you are done with first pattern, then logic to this wouldn't be much difficult to get. This pattern is almost similar to the first pattern we just printed, except trailing spaces before the number. Hence, logic to print the pattern will be same as the first pattern, we only need to add the logic of printing spaces. You can hover your mouse cursor to the pattern to see or count the number of space. The pattern consists of i - 1 spaces per row (where i is the current row number). Note that in the given pattern we have assumed that row numbers are ordered descending from N-1.
Step-by-step descriptive logic to print spaces:

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

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

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

        printf("\n");
    }

    return 0;
}

Happy coding 😉

Write your doubts or suggestion. I will try my best to help. You must escape source code before commenting. To format your source code paste your source code inside
<pre><code> ----Your Source Code---- </code></pre>