📜  打印数字图案的程序

📅  最后修改于: 2022-05-13 01:57:59.172000             🧑  作者: Mango

打印数字图案的程序

我们必须打印一个模式,其中中间列仅包含 1,右侧列包含大于 1 的常量数字,左侧列包含大于 1 的常量数字。每一行应该看起来像回文

例子 :

Input : 3
Output :
    1
 2  1  2
    1

Input : 5
Output :
     1
  2  1  2
3 2  1  2 3
  2  1  2
     1

下面是打印以下模式的实现:

C++
// CPP program to print pattern
#include 
using namespace std;
 
void display()
{
     
    int n = 5;
    int space = n / 2, num = 1;
      
    // Outer for loop for
    // number of rows
    for (int i = 1; i <= n; i++)
    {
        // Inner for loop for
        // printing space
        for (int j = 1; j <= space; j++)           
            cout<<" ";
          
        // Logic for printing
        // the pattern for everyline
        int count = num / 2 + 1;
         
        for (int k = 1; k <= num; k++)
        {
            cout<


Java
// Java program to print above pattern
import java.util.Scanner;
class Pattern
{
    void display()
    {
        int n = 5;
        int space = n / 2, num = 1;
         
        // Outer for loop for
        // number of rows
        for (int i = 1; i <= n; i++)
        {
            // Inner for loop
            // for printing space
            for (int j = 1; j <= space; j++)           
                System.out.print(" ");
             
            // Logic for printing
            // the pattern for everyline
            int count = num / 2 + 1;
            for (int k = 1; k <= num; k++)
            {
                System.out.print(count);
                // Value of count decrements
                // in every cycle
                if (k <= num /2 )
                    count--;
 
                // Value of count will increment
                // in every cycle
                else
                    count++;
            }
 
            System.out.println();
 
            // Before reaching half Space is decreased
            // by 1 and num is increased by 2
            if (i <= n / 2)
            {
                space = space - 1;
                num = num + 2;
            }
 
            // After reaching to half space is increased
            // by 1 and num is decreased by 2
            else
            {
                space = space + 1;
                num = num - 2;
            }
        }
    }
 
    // Driver Code
    public static void main(String[] args)
    {
        Pattern p = new Pattern();
        p.display();
    }
}


Python3
# Python 3 program to
# print above pattern
 
def display() :
    n = 5
    space = n // 2
    num = 1
     
    # Outer for loop for
    # number of rows
    for i in range(1, n+1) :
         
        # Inner for loop for 
        # printing space
        for j in range(1, space+1) :
            print(" ", end = "")
             
        # Logic for printing the
        # pattern for everyline
        count = num // 2 + 1
         
        for k in range(1, num+1) :
            print(count, end = "")
             
            # Value of count decrements
            # in every cycle
            if (k <= num // 2 ) :
                count = count -1
 
            # Value of count will
            # increment in every cycle
            else :
                count = count + 1
        print()
 
        # Before reaching half Space
        # is decreased by 1 and num
        # is increased by 2
        if (i <= n // 2) :
            space = space - 1
            num = num + 2
         
        # After reaching to half
        # space is increased by 1
        # and num is decreased by 2
        else :
            space = space + 1
            num = num - 2
             
# Driver Code
display()
 
#This code is contributed by Nikita Tiwari.


C#
// C# program to print above pattern
using System;
class Pattern
{
    void display()
    {
        int n = 5;
        int space = n / 2, num = 1;
         
        // Outer for loop for
        // number of rows
        for (int i = 1; i <= n; i++)
        {
            // Inner for loop
            // for printing space
            for (int j = 1; j <= space; j++)       
                Console.Write(" ");
             
            // Logic for printing
            // the pattern for everyline
            int count = num / 2 + 1;
            for (int k = 1; k <= num; k++)
            {
                Console.Write(count);
                // Value of count decrements
                // in every cycle
                if (k <= num /2 )
                    count--;
 
                // Value of count will increment
                // in every cycle
                else
                    count++;
            }
 
            Console.WriteLine();
 
            // Before reaching half Space is decreased
            // by 1 and num is increased by 2
            if (i <= n / 2)
            {
                space = space - 1;
                num = num + 2;
            }
 
            // After reaching to half space is increased
            // by 1 and num is decreased by 2
            else
            {
                space = space + 1;
                num = num - 2;
            }
        }
    }
 
    // Driver Code
    public static void Main()
    {
        Pattern p = new Pattern();
        p.display();
    }
}
// This code is contributed by vt_m.


PHP


Javascript


输出 :

1
 212
32123
 212
  1