# Program to print right and left arrow patterns

Last Updated : 20 Feb, 2023

Write to program to print the right arrow pattern and the left arrow pattern formed of stars. Input is an odd number n which represents height and width of pattern to be printed.
Examples:

Input : n = 9
Output :
*
*
*
*
*********
*
*
*
*

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

Input : n = 7
Output :
*
*
*
*******
*
*
*

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

## C++

 // C++ program to print Pyramid pattern #include using namespace std;    // function to print right arrow pattern void rightpattern(int n) {     // for printing upper portion     int c1 = (n - 1) / 2;        // for printing lower portion     int c2 = 3 * n / 2 - 1;        for (int i = 0; i < n; i++) {         for (int j = 0; j < n; j++) {                // checking conditions to print right arrow             if (j - i == c1 || i + j == c2 || i == c1)                 cout << "*";                // otherwise print space             else                 cout << " ";         }         // for jumping to next line         cout << "\n";     } }    // function to print left arrow pattern void leftpattern(int n) {     char s = ' ';     char st = '*';        // for printing upper part     for (int i = (n - 1) / 2; i > 0; i--)         cout << string(i, s) << st << endl;        // for printing middle part     for (int i = 0; i < n; i++)         cout << "*";     cout << endl;        // for printing lower part     for (int i = 1; i <= (n - 1) / 2; i++)         cout << string(i, s) << st << endl;     cout << endl; }    // Driver program int main() {     int n = 9; // Must be odd        // function calling to print right arrow     rightpattern(n);        cout << endl  << endl;        // function calling to print left arrow     leftpattern(n);        return 0; }

## Java

 // Java program to print Pyramid pattern  class GFG  {    // function to print right arrow pattern  static void rightpattern(int n) {     // for printing upper portion      int c1 = (n - 1) / 2;        // for printing lower portion      int c2 = 3 * n / 2 - 1;        for (int i = 0; i < n; i++)      {         for (int j = 0; j < n; j++)          {                // checking conditions to print             // right arrow              if (j - i == c1 ||                  i + j == c2 || i == c1)              {                 System.out.print("*");             } // otherwise print space              else              {                 System.out.print(" ");             }         }         // for jumping to next line          System.out.print("\n");     } }    static void string(int n)  {     for (int i = n; i > 0; i--)      {         System.out.print(" ");     } }    // function to print left arrow pattern  static void leftpattern(int n)  {     char s = ' ';     char st = '*';        // for printing upper part      for (int i = (n - 1) / 2; i > 0; i--)      {         string(i);         System.out.println(st);     }            // for printing middle part      for (int i = 0; i < n; i++)      {         System.out.print("*");     }     System.out.println();        // for printing lower part      for (int i = 1; i <= (n - 1) / 2; i++)      {         string(i);         System.out.println(st);     }     System.out.println(); }    // Driver Code public static void main(String args[]) {     int n = 9; // Must be odd         // function calling to print      // right arrow      rightpattern(n);        System.out.println("\n");        // function calling to print      // left arrow      leftpattern(n); } }    // This code is contributed  // by PrinciRaj1992

## Python3

 # Python3 program to print Pyramid pattern    # function to print right arrow pattern def rightpattern(n):            # for printing upper portion     c1 = (n - 1) // 2;        # for printing lower portion     c2 = 3 * n // 2 - 1;        for i in range(n):            for j in range(n):                # checking conditions to print             # right arrow             if (j - i == c1 or                 i + j == c2 or i == c1):                    print("*", end = "");                                # otherwise print space             else:                    print(" ", end = "");            # for jumping to next line         print();    def string(n):        for i in range(n):         print(" ", end = "");    # function to print left arrow pattern def leftpattern(n):        s = ' ';     st = '*';        # for printing upper part     for i in range((n - 1) // 2, 0, -1):         string(i);         print(st);        # for printing middle part     for i in range(n):         print("*", end = "");        print();        # for printing lower part     for i in range(1, ((n - 1) // 2) + 1):         string(i);         print(st);        print();    # Driver Code if __name__ == '__main__':     n = 9; # Must be odd        # function calling to print     # right arrow     rightpattern(n);        print("");        # function calling to print     # left arrow     leftpattern(n);    # This code is contributed by PrinciRaj1992

## C#

 // C# program to print Pyramid pattern  using System;    class GFG  {    // function to print right arrow pattern  static void rightpattern(int n) {     // for printing upper portion      int c1 = (n - 1) / 2;        // for printing lower portion      int c2 = 3 * n / 2 - 1;        for (int i = 0; i < n; i++)      {         for (int j = 0; j < n; j++)          {                // checking conditions to print             // right arrow              if (j - i == c1 ||                  i + j == c2 || i == c1)              {                 Console.Write("*");             } // otherwise print space              else             {                 Console.Write(" ");             }         }         // for jumping to next line          Console.Write("\n");     } }    static void String(int n)  {     for (int i = n; i > 0; i--)      {         Console.Write(" ");     } }    // function to print left arrow pattern  static void leftpattern(int n)  {     char s = ' ';     char st = '*';        // for printing upper part      for (int i = (n - 1) / 2; i > 0; i--)      {         String(i);         Console.WriteLine(st);     }            // for printing middle part      for (int i = 0; i < n; i++)      {         Console.Write("*");     }     Console.WriteLine();        // for printing lower part      for (int i = 1; i <= (n - 1) / 2; i++)      {         String(i);         Console.WriteLine(st);     }     Console.WriteLine(); }    // Driver Code public static void Main() {     int n = 9; // Must be odd         // function calling to print      // right arrow      rightpattern(n);        Console.WriteLine("\n");        // function calling to print      // left arrow      leftpattern(n); } }    // This code is contributed  // by Akanksha Rai

## PHP

 0; \$i--)     {     for(\$j = 0; \$j < \$i; \$j++)         echo " ";     echo \$st."\n";     }            // for printing middle part     for (\$i = 0; \$i < \$n; \$i++)         echo "*";     echo "\n";        // for printing lower part     for (\$i = 1; \$i <= (\$n - 1) / 2; \$i++)     {             for(\$j = 0; \$j < \$i; \$j++)         echo " ";     echo \$st."\n";     }     echo "\n"; }        // Driver Code     \$n = 9; // Must be odd        // function calling to      // print right arrow     rightpattern(\$n);        echo "\n\n";        // function calling to      // print left arrow     leftpattern(\$n);       // This code is contributed by mits     ?>

## Javascript



Output:

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

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

Time Complexity: O(n^2)

Auxiliary Space: O(1) because it is using constant space for variables

Previous
Next