Open In App

Programs for Printing Pyramid Patterns using Recursion

Improve
Improve
Improve
Like Article
Like
Save Article
Save
Share
Report issue
Report

This article is aimed at giving a recursive implementation for pattern printing.

  • Simple triangle pattern:

C++




// C++ code to demonstrate star pattern
#include <iostream>
using namespace std;
 
// function to print a row
void printn(int num)
{
    // base case
    if (num == 0)
        return;
    cout << "* ";
 
    // recursively calling printn()
    printn(num - 1);
}
 
// function to print the pattern
void pattern(int n, int i)
{
    // base case
    if (n == 0)
        return;
    printn(i);
    cout << endl;
 
    // recursively calling pattern()
    pattern(n - 1, i + 1);
}
 
// driver function
int main()
{
    int n = 5;
    pattern(n, 1);
    return 0;
}


Java




// Java code to demonstrate star pattern
import java.io.*;
 
class GFG
{
     
// function to print a row
static void printn(int num)
{
    // base case
    if (num == 0)
        return;
    System.out.print ("* ");
 
    // recursively calling printn()
    printn(num - 1);
}
 
// function to print the pattern
static void pattern(int n, int i)
{
    // base case
    if (n == 0)
        return;
    printn(i);
    System.out.println();
 
    // recursively calling pattern()
    pattern(n - 1, i + 1);
}
 
// Driver code
public static void main (String[] args)
{
 
    int n = 5;
    pattern(n, 1);
}
}
 
// This code is contributed by ajit.


Python3




# Python3 code to demonstrate star pattern
 
# function to print a row
def printn(num):
     
    # base case
    if (num == 0):
        return
    print("*", end = " ")
 
    # recursively calling printn()
    printn(num - 1)
 
# function to print the pattern
def pattern(n, i):
     
    # base case
    if (n == 0):
        return
    printn(i)
    print("\n", end = "")
     
    # recursively calling pattern()
    pattern(n - 1, i + 1)
 
# Driver Code
if __name__ == '__main__':
    n = 5
    pattern(n, 1)
 
# This code is contributed by
# Surendra_Gangwar


C#




// C# code to demonstrate star pattern
using System;
 
class GFG
{
         
// function to print a row
static void printn(int num)
{
    // base case
    if (num == 0)
        return;
    Console.Write("* ");
 
    // recursively calling printn()
    printn(num - 1);
}
 
// function to print the pattern
static void pattern(int n, int i)
{
    // base case
    if (n == 0)
        return;
    printn(i);
    Console.WriteLine();
 
    // recursively calling pattern()
    pattern(n - 1, i + 1);
}
 
// Driver code
static public void Main ()
{
    int n = 5;
    pattern(n, 1);
}
}
 
// This code is contributed by akt_mit.


PHP




<?php
// PHP code to demonstrate star pattern
 
// Function to print a row
function printn($num)
{
    // base case
    if ($num == 0)
        return;
    echo "* ";
 
    // recursively calling printn()
    printn($num - 1);
}
 
// function to print the pattern
function pattern($n, $i)
{
    // base case
    if ($n == 0)
        return;
    printn($i);
    echo "\n";
 
    // recursively calling pattern()
    pattern($n - 1, $i + 1);
}
 
// Driver Code
$n = 5;
pattern($n, 1);
 
// This code is contributed by @Tushil..
?>


Javascript




<script>
 
// JavaScript code to demonstrate star pattern
 
    // function to print a row
    function printn(num) {
        // base case
        if (num == 0)
            return;
        document.write("* ");
 
        // recursively calling printn()
        printn(num - 1);
    }
 
    // function to print the pattern
    function pattern(n , i) {
        // base case
        if (n == 0)
            return;
        printn(i);
        document.write("<br/>");
 
        // recursively calling pattern()
        pattern(n - 1, i + 1);
    }
 
    // Driver code
     
 
        var n = 5;
        pattern(n, 1);
 
// This code is contributed by aashish1995
 
</script>


Output: 

* 
* * 
* * * 
* * * * 
* * * * *

 

  • After 180-degree rotation:

C++




// C++ code to demonstrate star pattern
 
#include <iostream>
using namespace std;
 
// function to print spaces
void print_space(int space)
{
    // base case
    if (space == 0)
        return;
    cout << " "
         << " ";
 
    // recursively calling print_space()
    print_space(space - 1);
}
 
// function to print asterisks
void print_asterisk(int asterisk)
{
    // base case
    if (asterisk == 0)
        return;
    cout << "* ";
 
    // recursively calling print_asterisk()
    print_asterisk(asterisk - 1);
}
 
// function to print the pattern
void pattern(int n, int num)
{
    // base case
    if (n == 0)
        return;
    print_space(n - 1);
    print_asterisk(num - n + 1);
    cout << endl;
 
    // recursively calling pattern()
    pattern(n - 1, num);
}
 
// driver function
int main()
{
    int n = 5;
    pattern(n, n);
    return 0;
}


Java




// Java code to demonstrate star pattern
import java.util.*;
 
class GFG
{
 
    // function to print spaces
    static void print_space(int space)
    {
        // base case
        if (space == 0)
        {
            return;
        }
        System.out.print(" " + " ");
 
        // recursively calling print_space()
        print_space(space - 1);
    }
 
    // function to print asterisks
    static void print_asterisk(int asterisk)
    {
        // base case
        if (asterisk == 0)
        {
            return;
        }
        System.out.print("* ");
 
        // recursively calling print_asterisk()
        print_asterisk(asterisk - 1);
    }
 
    // function to print the pattern
    static void pattern(int n, int num)
    {
        // base case
        if (n == 0)
        {
            return;
        }
        print_space(n - 1);
        print_asterisk(num - n + 1);
        System.out.println();
 
        // recursively calling pattern()
        pattern(n - 1, num);
    }
 
    // Driver code
    public static void main(String[] args)
    {
        int n = 5;
        pattern(n, n);
    }
}
 
// This code is contributed by Rajput-Ji


Python3




# Python3 code to demonstrate star pattern
 
# function to print spaces
def print_space(space):
     
    # base case
    if (space == 0):
        return;
     
    print(" ", end=" ");
 
    # recursively calling print_space()
    print_space(space - 1);
 
# function to print asterisks
def print_asterisk(asterisk):
     
    # base case
    if (asterisk == 0):
        return;
     
    print("*", end =" ");
 
    # recursively calling print_asterisk()
    print_asterisk(asterisk - 1);
 
# function to print the pattern
def pattern(n, num):
     
    # base case
    if (n == 0):
        return;
     
    print_space(n - 1);
    print_asterisk(num - n + 1);
    print();
 
    # recursively calling pattern()
    pattern(n - 1, num);
 
# Driver code
if __name__ == '__main__':
    n = 5;
    pattern(n, n);
     
# This code is contributed by 29AjayKumar


C#




// C# code to demonstrate star pattern
using System;
 
class GFG
{
     
// function to print spaces
static void print_space(int space)
{
    // base case
    if (space == 0)
        return;
    Console.Write(" " + " ");
 
    // recursively calling print_space()
    print_space(space - 1);
}
 
// function to print asterisks
static void print_asterisk(int asterisk)
{
    // base case
    if (asterisk == 0)
        return;
    Console.Write("* ");
 
    // recursively calling print_asterisk()
    print_asterisk(asterisk - 1);
}
 
// function to print the pattern
static void pattern(int n, int num)
{
    // base case
    if (n == 0)
        return;
    print_space(n - 1);
    print_asterisk(num - n + 1);
    Console.WriteLine();
 
    // recursively calling pattern()
    pattern(n - 1, num);
}
 
// Driver code
public static void Main()
{
    int n = 5;
    pattern(n, n);
}
}
 
// This code is contributed by Akanksha Rai


PHP




<?php
// PHP code to demonstrate star pattern
// function to print spaces
function print_space($space)
{
    // base case
    if ($space == 0)
        return;
    echo " ",
            " ";
 
    // recursively calling print_space()
    print_space($space - 1);
}
 
// function to print asterisks
function print_asterisk($asterisk)
{
    // base case
    if ($asterisk == 0)
        return;
    echo "* ";
 
    // recursively calling print_asterisk()
    print_asterisk($asterisk - 1);
}
 
// function to print the pattern
function pattern($n, $num)
{
    // base case
    if ($n == 0)
        return;
    print_space($n - 1);
    print_asterisk(($num - $n) + 1);
    echo "\n";
 
    // recursively calling pattern()
    pattern($n - 1, $num);
}
 
// Driver Code
$n = 5;
pattern($n, $n);
 
// This code is contributed by @Tushil.
?>


Javascript




<script>
// javascript code to demonstrate star pattern
 
    // function to print spaces
    function print_space(space) {
        // base case
        if (space == 0) {
            return;
        }
        document.write(" " + "  ");
 
        // recursively calling print_space()
        print_space(space - 1);
    }
 
    // function to print asterisks
    function print_asterisk(asterisk) {
        // base case
        if (asterisk == 0) {
            return;
        }
        document.write("* ");
 
        // recursively calling print_asterisk()
        print_asterisk(asterisk - 1);
    }
 
    // function to print the pattern
    function pattern(n , num) {
        // base case
        if (n == 0) {
            return;
        }
        print_space(n - 1);
        print_asterisk(num - n + 1);
        document.write("<br/>");
 
        // recursively calling pattern()
        pattern(n - 1, num);
    }
 
    // Driver code
     
        var n = 5;
        pattern(n, n);
 
// This code is  contributed by aashish1995
</script>


Output: 

        * 
      * * 
    * * * 
  * * * * 
* * * * *

 

  • Printing Pyramid:

C++




// C++ code to demonstrate star pattern
 
#include <iostream>
using namespace std;
 
// function to print spaces
void print_space(int space)
{
    // base case
    if (space == 0)
        return;
    cout << " ";
 
    // recursively calling print_space()
    print_space(space - 1);
}
 
// function to print asterisks
void print_asterisk(int asterisk)
{
    // base case
    if (asterisk == 0)
        return;
    cout << "* ";
 
    // recursively calling asterisk()
    print_asterisk(asterisk - 1);
}
 
// function to print the pattern
void pattern(int n, int num)
{
    // base case
    if (n == 0)
        return;
    print_space(n - 1);
    print_asterisk(num - n + 1);
    cout << endl;
 
    // recursively calling pattern()
    pattern(n - 1, num);
}
 
// driver function
int main()
{
    int n = 5;
    pattern(n, n);
    return 0;
}


Java




// Java code to demonstrate star pattern
import java.util.*;
 
class GFG
{
 
// function to print spaces
static void print_space(int space)
{
    // base case
    if (space == 0)
        return;
    System.out.print(" ");
 
    // recursively calling print_space()
    print_space(space - 1);
}
 
// function to print asterisks
static void print_asterisk(int asterisk)
{
    // base case
    if (asterisk == 0)
        return;
    System.out.print("* ");
 
    // recursively calling asterisk()
    print_asterisk(asterisk - 1);
}
 
// function to print the pattern
static void pattern(int n, int num)
{
    // base case
    if (n == 0)
        return;
    print_space(n - 1);
    print_asterisk(num - n + 1);
    System.out.println("");
 
    // recursively calling pattern()
    pattern(n - 1, num);
}
 
// Driver code
public static void main(String[] args)
{
    int n = 5;
    pattern(n, n);
}
}
 
// This code is contributed by 29AjayKumar


Python3




# Python3 code to demonstrate star pattern
 
# function to print spaces
def print_space(space):
     
    # base case
    if (space == 0):
        return;
    print(" ", end = "");
 
    # recursively calling print_space()
    print_space(space - 1);
 
# function to print asterisks
def print_asterisk(asterisk):
     
    # base case
    if(asterisk == 0):
        return;
    print("* ", end = "");
 
    # recursively calling asterisk()
    print_asterisk(asterisk - 1);
 
# function to print the pattern
def pattern(n, num):
     
    # base case
    if (n == 0):
        return;
    print_space(n - 1);
    print_asterisk(num - n + 1);
    print("");
 
    # recursively calling pattern()
    pattern(n - 1, num);
 
# Driver Code
n = 5;
pattern(n, n);
 
# This code contributed by PrinciRaj1992


C#




// C# code to demonstrate star pattern
using System;
 
class GFG
{
 
// function to print spaces
static void print_space(int space)
{
    // base case
    if (space == 0)
        return;
    Console.Write(" ");
 
    // recursively calling print_space()
    print_space(space - 1);
}
 
// function to print asterisks
static void print_asterisk(int asterisk)
{
    // base case
    if (asterisk == 0)
        return;
    Console.Write("* ");
 
    // recursively calling asterisk()
    print_asterisk(asterisk - 1);
}
 
// function to print the pattern
static void pattern(int n, int num)
{
    // base case
    if (n == 0)
        return;
    print_space(n - 1);
    print_asterisk(num - n + 1);
    Console.WriteLine("");
 
    // recursively calling pattern()
    pattern(n - 1, num);
}
 
// Driver code
public static void Main(String[] args)
{
    int n = 5;
    pattern(n, n);
}
}
 
// This code is contributed by 29AjayKumar


PHP




<?php
// PHP code to demonstrate star pattern
 
// function to print spaces
function print_space($space)
{
    // base case
    if ($space == 0)
        return;
    echo " ";
 
    // recursively calling print_space()
    print_space($space - 1);
}
 
// function to print asterisks
function print_asterisk($asterisk)
{
    // base case
    if ($asterisk == 0)
        return;
    echo "* ";
 
    // recursively calling asterisk()
    print_asterisk($asterisk - 1);
}
 
// function to print the pattern
function pattern($n, $num)
{
    // base case
    if ($n == 0)
        return;
    print_space($n - 1);
    print_asterisk($num - $n + 1);
    echo "\n";
 
    // recursively calling pattern()
    pattern($n - 1, $num);
}
 
// Driver code
    $n = 5;
    pattern($n, $n);
     
// This code is contributed by ajit.
?>


Javascript




<script>
 
// JavaScript code to demonstrate star pattern
 
// function to print spaces
function print_space(space)
{
    // base case
    if (space == 0)
        return;
    document.write(" ");
  
    // recursively calling print_space()
    print_space(space - 1);
}
 
// function to print asterisks
function print_asterisk(asterisk)
{
    // base case
    if (asterisk == 0)
        return;
    document.write("* ");
  
    // recursively calling asterisk()
    print_asterisk(asterisk - 1);
}
 
// function to print the pattern
function pattern(n,num)
{
    // base case
    if (n == 0)
        return;
    print_space(n - 1);
    print_asterisk(num - n + 1);
    document.write("<br>");
  
    // recursively calling pattern()
    pattern(n - 1, num);
}
 
// Driver code
let n = 5;
pattern(n, n);
 
 
// This code is contributed by rag2127
 
</script>


Output: 

    * 
   * * 
  * * * 
 * * * * 
* * * * *

 

  • Number Pattern

C++




// C++ code to demonstrate printing pattern of numbers
 
#include <iostream>
using namespace std;
 
// function to print a row
void print_row(int no, int val)
{
    // base case
    if (no == 0)
        return;
    cout << val << " ";
 
    // recursively calling print_row()
    print_row(no - 1, val);
}
 
// function to print the pattern
void pattern(int n, int num)
{
    // base case
    if (n == 0)
        return;
    print_row(num - n + 1, num - n + 1);
    cout << endl;
 
    // recursively calling pattern()
    pattern(n - 1, num);
}
int main()
{
    int n = 5;
    pattern(n, n);
}


Java




// Java code to demonstrate printing
// pattern of numbers
class GFG
{
     
// function to print a row
static void print_row(int no, int val)
{
    // base case
    if (no == 0)
        return;
    System.out.print(val + " ");
 
    // recursively calling print_row()
    print_row(no - 1, val);
}
 
// function to print the pattern
static void pattern(int n, int num)
{
    // base case
    if (n == 0)
        return;
    print_row(num - n + 1, num - n + 1);
    System.out.println();
 
    // recursively calling pattern()
    pattern(n - 1, num);
}
 
// Driver Code
public static void main(String[] args)
{
    int n = 5;
    pattern(n, n);
}
}
 
// This code is contributed by Code_Mech.


Python3




# Python3 code to demonstrate printing
# pattern of numbers
 
# function to print a row
def print_row(no, val):
     
    # base case
    if (no == 0):
        return;
    print(val , end=" ");
 
    # recursively calling print_row()
    print_row(no - 1, val);
 
# function to print the pattern
def pattern(n, num):
    # base case
    if (n == 0):
        return;
    print_row(num - n + 1, num - n + 1);
    print("");
 
    # recursively calling pattern()
    pattern(n - 1, num);
 
# Driver Code
n = 5;
pattern(n, n);
 
# This code contributed by PrinciRaj1992


C#




// C# code to demonstrate printing
// pattern of numbers
using System;
 
class GFG
{
     
// function to print a row
static void print_row(int no, int val)
{
    // base case
    if (no == 0)
        return;
    Console.Write(val + " ");
 
    // recursively calling print_row()
    print_row(no - 1, val);
}
 
// function to print the pattern
static void pattern(int n, int num)
{
    // base case
    if (n == 0)
        return;
    print_row(num - n + 1, num - n + 1);
    Console.WriteLine();
 
    // recursively calling pattern()
    pattern(n - 1, num);
}
 
// Driver Code
public static void Main()
{
    int n = 5;
    pattern(n, n);
}
}
 
// This code is contributed by Akanksha Rai


PHP




<?php
// PHP code to demonstrate printing
// pattern of numbers
 
// function to print a row
function print_row($no, $val)
{
    // base case
    if ($no == 0)
        return;
    echo $val . " ";
 
    // recursively calling print_row()
    print_row($no - 1, $val);
}
 
// function to print the pattern
function pattern($n, $num)
{
    // base case
    if ($n == 0)
        return;
    print_row($num - $n + 1,
              $num - $n + 1);
    echo "\n";
 
    // recursively calling pattern()
    pattern($n - 1, $num);
}
 
// Driver Code
$n = 5;
pattern($n, $n);
 
// This code is contributed
// by Akanksha Rai
?>


Javascript




<script>
 
      // JavaScript code to demonstrate
      // printing pattern of numbers
 
      // function to print a row
      function print_row(no, val) {
        
       // base case
        if (no == 0) return;
        document.write(val + "  ");
 
        // recursively calling print_row()
        print_row(no - 1, val);
      }
 
      // function to print the pattern
      function pattern(n, num) {
         
        // base case
        if (n == 0) return;
        print_row(num - n + 1, num - n + 1);
        document.write("<br>");
 
        // recursively calling pattern()
        pattern(n - 1, num);
      }
 
      var n = 5;
      pattern(n, n);
       
    </script>


Output: 

1 
2 2 
3 3 3 
4 4 4 4 
5 5 5 5 5

 

  • Numbers without reassigning:

C++




// C++ code to demonstrate printing pattern of numbers
 
#include <iostream>
using namespace std;
 
// function to print a row
int print_row(int ct, int num)
{
    // base case
    if (num == 0)
        return ct;
    cout << ct << "\t";
 
    // recursively calling print_row()
    print_row(ct + 1, num - 1);
}
 
// function to print the pattern
void pattern(int n, int count, int num)
{
    // base case
    if (n == 0)
        return;
    count = print_row(count, num);
    cout << endl;
 
    // recursively calling pattern()
    pattern(n - 1, count, num + 1);
}
 
// driver function
int main()
{
    int n = 5;
    pattern(n, 1, 1);
}


Java




// Java code to demonstrate
// printing pattern of numbers
import java.io.*;
 
class GFG
{
     
// function to print a row
static int print_row(int ct, int num)
{
    // base case
    if (num == 0)
        return ct;
            System.out.print(ct + "  ");
 
    // recursively calling print_row()
    return print_row(ct + 1, num - 1);
}
 
// function to print the pattern
static void pattern(int n,
                    int count, int num)
{
    // base case
    if (n == 0)
        return;
    count = print_row(count, num);
            System.out.println();
 
    // recursively calling pattern()
    pattern(n - 1, count, num + 1);
}
 
// Driver Code
public static void main (String[] args)
{
    int n = 5;
    pattern(n, 1, 1);
}
}
 
// This code is contributed by Tushil


Python3




# Python3 code to demonstrate
# printing pattern of numbers
 
# function to print a row
def print_row(ct, num):
     
    # base case
    if (num == 0):
        return ct;
    print(ct, end = " ");
 
    # recursively calling print_row()
    return print_row(ct + 1, num - 1);
 
# function to print the pattern
def pattern(n, count, num):
     
    # base case
    if (n == 0):
        return;
    count = print_row(count, num);
    print();
 
    # recursively calling pattern()
    pattern(n - 1, count, num + 1);
 
# Driver Code
if __name__ == '__main__':
    n = 5;
    pattern(n, 1, 1);
 
# This code is contributed by 29AjayKumar


C#




// C# code to demonstrate
// printing pattern of numbers
using System;
 
class GFG
{
 
// function to print a row
static int print_row(int ct, int num)
{
    // base case
    if (num == 0)
        return ct;
    Console.Write (ct + "  ");
 
    // recursively calling print_row()
    return print_row(ct + 1, num - 1);
}
 
// function to print the pattern
static void pattern(int n,
                    int count, int num)
{
    // base case
    if (n == 0)
        return;
    count = print_row(count, num);
    Console.WriteLine();
 
    // recursively calling pattern()
    pattern(n - 1, count, num + 1);
}
 
// Driver Code
static public void Main ()
{
    int n = 5;
    pattern(n, 1, 1);
}
}
 
// This code is contributed by ajit


Javascript




<script>
 
// Javascript code to demonstrate
// printing pattern of numbers
 
// Function to print a row
function print_row(ct, num)
{
     
    // Base case
    if (num == 0)
        return ct;
         
    document.write(ct + "   ");
 
    // Recursively calling print_row()
    return print_row(ct + 1, num - 1);
}
 
// Function to print the pattern
function pattern(n, count, num)
{
     
    // Base case
    if (n == 0)
        return;
         
    count = print_row(count, num);
    document.write("<br/>");
 
    // Recursively calling pattern()
    pattern(n - 1, count, num + 1);
}
 
// Driver Code
var n = 5;
 
pattern(n, 1, 1);
 
// This code is contributed by aashish1995
 
</script>


Output: 

1    
2    3    
4    5    6    
7    8    9    10    
11    12    13    14    15

 

  • Character Pattern:

C++




// C++ code to demonstrate printing pattern of alphabets
 
#include <iostream>
using namespace std;
 
// function to print a row
void print_row(int no, int val)
{
    // base case
    if (no == 0)
        return;
    cout << (char)(val + 64) << " ";
 
    // recursively calling print_row()
    print_row(no - 1, val);
}
 
// function to print the pattern
void pattern(int n, int num)
{
    // base case
    if (n == 0)
        return;
    print_row(num - n + 1, num - n + 1);
    cout << endl;
 
    // recursively calling pattern()
    pattern(n - 1, num);
}
int main()
{
    int n = 5;
    pattern(n, n);
}


Java




// Java code to demonstrate printing pattern of alphabets
class GFG
{
 
// function to print a row
static void print_row(int no, int val)
{
    // base case
    if (no == 0)
        return;
    System.out.print((char)(val + 64) + " ");
 
    // recursively calling print_row()
    print_row(no - 1, val);
}
 
// function to print the pattern
static void pattern(int n, int num)
{
    // base case
    if (n == 0)
        return;
    print_row(num - n + 1, num - n + 1);
    System.out.println();
 
    // recursively calling pattern()
    pattern(n - 1, num);
}
 
// Driver code
public static void main(String[] args)
{
    int n = 5;
    pattern(n, n);
}
}
 
// This code is contributed by Rajput-Ji


Python3




# Python3 code to demonstrate printing pattern of alphabets
 
 
# function to print a row
def print_row(no, val):
    # base case
    if (no == 0):
        return;
    print(chr(val + 64), end=" ");
 
    # recursively calling print_row()
    print_row(no - 1, val);
 
 
# function to print the pattern
def pattern(n, num):
    # base case
    if (n == 0):
        return;
    print_row(num - n + 1, num - n + 1);
    print();
 
    # recursively calling pattern()
    pattern(n - 1, num);
 
 
# Driver code
if __name__ == '__main__':
    n = 5;
    pattern(n, n);
 
# This code is contributed by 29AjayKumar


C#




// C# code to demonstrate printing pattern of alphabets
using System;
 
class GFG
{
 
// function to print a row
static void print_row(int no, int val)
{
    // base case
    if (no == 0)
        return;
    Console.Write((char)(val + 64) + " ");
 
    // recursively calling print_row()
    print_row(no - 1, val);
}
 
// function to print the pattern
static void pattern(int n, int num)
{
    // base case
    if (n == 0)
        return;
    print_row(num - n + 1, num - n + 1);
    Console.WriteLine();
 
    // recursively calling pattern()
    pattern(n - 1, num);
}
 
// Driver code
public static void Main(String[] args)
{
    int n = 5;
    pattern(n, n);
}
}
 
// This code is contributed by 29AjayKumar


Javascript




<script>
    // Javascript code to demonstrate printing pattern of alphabets
     
    // function to print a row
    function print_row(no, val)
    {
        // base case
        if (no == 0)
            return;
        document.write(String.fromCharCode(val + 64) + " ");
 
        // recursively calling print_row()
        print_row(no - 1, val);
    }
 
    // function to print the pattern
    function pattern(n, num)
    {
        // base case
        if (n == 0)
            return;
        print_row(num - n + 1, num - n + 1);
        document.write("</br>");
 
        // recursively calling pattern()
        pattern(n - 1, num);
    }
     
    let n = 5;
    pattern(n, n);
 
</script>


Output: 

A 
B B 
C C C 
D D D D 
E E E E E

 

  • Continuous Character pattern: 
     

C++




#include <iostream>
using namespace std;
 
// function to print a row
int print_row(int ct, int num)
{
    // base case
    if (num == 0)
        return ct;
    cout << (char)(ct + 64) << " ";
 
    // recursively calling print_row()
    print_row(ct + 1, num - 1);
}
 
// function to print the pattern
void pattern(int n, int count, int num)
{
    // base case
    if (n == 0)
        return;
    count = print_row(count, num);
    cout << endl;
 
    // recursively calling pattern()
    pattern(n - 1, count, num + 1);
}
 
// driver function
int main()
{
    int n = 5;
    pattern(n, 1, 1);
}


Java




class GFG
{
 
// function to print a row
static int print_row(int ct, int num)
{
    // base case
    if (num == 0)
        return ct;
    System.out.print((char)(ct + 64) + " ");
 
    // recursively calling print_row()
    print_row(ct + 1, num - 1);
    return num + ct;
     
}
 
// function to print the pattern
static void pattern(int n, int count, int num)
{
    // base case
    if (n == 0)
        return;
    count = print_row(count, num);
    System.out.println();
 
    // recursively calling pattern()
    pattern(n - 1, count, num + 1);
}
 
// Driver code
public static void main(String[] args)
{
    int n = 5;
    pattern(n, 1, 1);
}
}
 
// This code is contributed by 29AjayKumar


Python3




# function to print row
def print_row(ct, num):
     
    # base case
    if (num == 0):
        return ct;
    print(chr(ct + 64), end=" ");
 
    # recursively calling print_row()
    print_row(ct + 1, num - 1);
    return num + ct;
 
# function to print the pattern
def pattern(n, count, num):
 
    # base case
    if (n == 0):
        return;
    count = print_row(count, num);
    print();
 
    # recursively calling pattern()
    pattern(n - 1, count, num + 1);
 
# Driver code
if __name__ == '__main__':
    n = 5;
    pattern(n, 1, 1);
 
# This code is contributed by Rajput-Ji


C#




using System;
 
class GFG
{
 
// function to print a row
static int print_row(int ct, int num)
{
    // base case
    if (num == 0)
        return ct;
    Console.Write((char)(ct + 64) + " ");
 
    // recursively calling print_row()
    print_row(ct + 1, num - 1);
    return num + ct;
 
}
 
// function to print the pattern
static void pattern(int n, int count, int num)
{
    // base case
    if (n == 0)
        return;
    count = print_row(count, num);
    Console.WriteLine();
 
    // recursively calling pattern()
    pattern(n - 1, count, num + 1);
}
 
// Driver code
public static void Main(String[] args)
{
    int n = 5;
    pattern(n, 1, 1);
}
}
 
// This code is contributed by 29AjayKumar


Javascript




<script>
    // function to print a row
function print_row( ct,  num)
{
    // base case
    if (num == 0)
        return ct;
    document.write(String.fromCharCode(ct + 64) + " ");
  
    // recursively calling print_row()
    print_row(ct + 1, num - 1);
    return num + ct;
  
}
  
// function to print the pattern
function pattern( n,  count,  num)
{
    // base case
    if (n == 0)
        return;
    count = print_row(count, num);
    document.write("<br>");
  
    // recursively calling pattern()
    pattern(n - 1, count, num + 1);
}
  
// Driver code
 
    var n = 5;
    pattern(n, 1, 1);
</script>


Output: 

A 
B C 
D E F 
G H I J 
K L M N O

 

Time Complexity and Space Complexity of the above Programs

Time Complexity: O(n2)
Auxiliary Space: O(n2), due to recursion stack.



Last Updated : 13 Jan, 2023
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads