Program to print a inverse pyramid character pattern - GeeksforGeeks

09 Apr, 2021
Given a positive integer n, print the inverse pyramid pattern upto n rows as shown in the examples.Examples :  
Input : 4
Output :

A B C D D C B A
  A B C C B A
    A B B A
      A A
 
Input : 6
Output :

 A B C D E F F E D C B A
   A B C D E E D C B A
     A B C D D C B A
       A B C C B A
         A B B A
           A A
 
Below is the implementation for the pattern:  
C++
Java
Python3
C#
PHP
Javascript
// C++ code to print inverse// pyramid pattern#include <bits/stdc++.h>using namespace std; // function to print the// inverse pyramid patternvoid pyramid(int n){    int i, j, num, gap;     // outer loop to handle number    // of rows n in this case    for (i = n; i >= 1; i--) {                 // inner loop to create right triangle        // gaps on left side of pyramid        for (gap = n - 1; gap >= i; gap--) {            cout<<" ";            cout<<" ";        }                 // initializing value corresponding        // to 'A' ASCII value        num = 'A';         // loop to print characters on        // left side of pyramid        for (j = 1; j <= i; j++) {            cout << (char) num++ <<" ";        }                 // loop to print characters on        // right side of pyramid        for (j = i - 1; j >= 0; j--) {            cout << (char) --num <<" ";        }        cout<<"\n";    }} // Driver functionint main(){    int n = 9;    pyramid(n);    return 0;}
// Java code for Inverse Pyramidimport java.util.*; class GFG {         // function for inverse pyramid print    static void pyramid(int n)    {        int i, j, num, gap;             // outer loop to handle number        // of rows n in this case        for (i = n; i >= 1; i--) {                         // inner loop to create right triangle            // gaps on left side of pyramid            for (gap = n - 1; gap >= i; gap--) {                System.out.print(" ");                System.out.print(" ");            }                         // initializing value corresponding            // to ASCII value of 'A'            num = 'A';                 // loop to print characters on            // left side of pyramid            for (j = 1; j <= i; j++) {                System.out.print((char)num++ + " ");            }                         // loop to print characters on            // right side of pyramid            for (j = i - 1; j >= 0; j--) {                System.out.print((char)--num + " ");            }                         System.out.println("");        }    }         /* Driver program to test above function */    public static void main(String[] args)    {        int n = 9;        pyramid(n);         }} // This article is contributed by Gitanjali.
# Python3 code to print inverse# pyramid pattern # function to print the following# inverse pyramid patterndef pyramid( n ):         # outer loop to handle number    # of rows n in this case    for i in range(n, 0, -1):                 # inner loop to create right triangle        # gaps on left side of pyramid        for gap in range(n-1, i-1, -1):            print(" ", end = '')            print(" ", end = '')                 # initializing value corresponding        # to 'A' ASCII value        num = ord('A')                 # loop to print characters on        # left side of pyramid        for j in range(1, i+1):            print(chr(num), end = ' ')            num += 1                     # loop to print characters on        # right side of pyramid        for j in range(i - 1, -1, -1):            num -= 1            print(chr(num), end = ' ')                 print("\n", end = '') # Driver Coden = 9pyramid(n) # This code is contributed by "Sharad_Bhardwaj".
//C# code for Inverse Pyramidusing System; class GFG {         // function for inverse pyramid print    static void pyramid(int n)    {        int i, j, num, gap;             // outer loop to handle number        // of rows n in this case        for (i = n; i >= 1; i--) {                         // inner loop to create right triangle            // gaps on left side of pyramid            for (gap = n - 1; gap >= i; gap--) {                Console.Write(" ");                Console.Write(" ");            }                         // initializing value corresponding            // to ASCII value of 'A'            num = 'A';                 // loop to print characters on            // left side of pyramid            for (j = 1; j <= i; j++) {                Console.Write((char)num++ + " ");            }                         // loop to print characters on            // right side of pyramid            for (j = i - 1; j >= 0; j--) {              Console.Write((char)--num + " ");            }                         Console.WriteLine("");        }    }         /* Driver program to test above function */    public static void Main()    {        int n = 9;        pyramid(n);         }} // This article is contributed by vt_m.
<?php// PHP implementation to print// inverse pyramid pattern // function to print the// inverse pyramid patternfunction pyramid($n){    // outer loop to handle number    // of rows n in this case    for ($i = $n; $i >= 1; $i--)    {                 // inner loop to create        // right triangle gaps on        // left side of pyramid        for ($gap = $n - 1; $gap >= $i;                            $gap--)        {            echo"  ";        }                 // initializing value corresponding        // to 'A' ASCII value is 65        $num = 65;         // loop to print characters on        // left side of pyramid        for ($j = 1; $j <= $i; $j++)        {            echo chr($num++)." ";        }                 // loop to print characters on        // right side of pyramid        for ($j = $i - 1; $j >= 0; $j--)        {            echo chr(--$num)." ";        }        echo"\n";    }} // Driver Code$n = 9;pyramid($n); // This code is contributed by mits?>
<script>       // JavaScript code to print inverse      // pyramid pattern       // function to print the      // inverse pyramid pattern      function pyramid(n)      {        var i, j, num, gap;         // outer loop to handle number        // of rows n in this case        for (i = n; i >= 1; i--) {          // inner loop to create right triangle          // gaps on left side of pyramid          for (gap = n - 1; gap >= i; gap--) {            document.write("    ");          }           // initializing value corresponding          // to 'A' ASCII value          num = "A".charCodeAt(0);           // loop to print characters on          // left side of pyramid          for (j = 1; j <= i; j++) {            document.write(String.fromCharCode(num++)            + "  ");          }           // loop to print characters on          // right side of pyramid          for (j = i - 1; j >= 0; j--) {            document.write(String.fromCharCode(--num)            + "  ");          }          document.write("<br>");        }      }       // Driver function      var n = 9;      pyramid(n);       </script>
Output : 
 A B C D E F G H I I H G F E D C B A
   A B C D E F G H H G F E D C B A
     A B C D E F G G F E D C B A
       A B C D E F F E D C B A
         A B C D E E D C B A
           A B C D D C B A
             A B C C B A
               A B B A
                 A A
 
Mithun Kumar
rdtank
pattern-printing
School Programming
pattern-printing
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Constructors in Java
Exceptions in Java
Ternary Operator in Python
Inline Functions in C++
Difference between Abstract Class and Interface in Java
Destructors in C++
Pure Virtual Functions and Abstract Classes in C++
Python Exception Handling
Exception Handling in C++
Taking input from console in Python