Open In App
Related Articles

Program for Arrow Star Pattern

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

Given the value of n, print the pattern.
Examples : 
 

Input : 5
Output :
    *****
   ****
  ***
 **
*
 **
  ***
   ****
    *****

Input : 7
Output : 
      *******
     ******
    *****
   ****
  ***
 **
*
 **
  ***
   ****
    *****
     ******
      *******


 


Below is the implementation to print the above pattern : 
 

C++

// C++ Implementation to print the pattern
  
#include <bits/stdc++.h>
using namespace std;
  
// arrow function 
int arrow(int n)
{
    // Prints the upper part of the arrow
    for (int i = 1; i <= n; i++) 
    {
        // for the spacing to form
        // the point of the arrow
        for (int j = i; j < n; j++) 
        {
            printf(" ");
        }
          
        // for printing the star(*)
        for (int j = i; j <= n; j++) 
        {
            cout << "*";
        }
        cout << endl;
    }
      
    // Prints lower part of the arrow
    for (int i = 2; i <= n; i++)
    {
        // for the spacing to form
        // the point of the arrow
        for (int j = 1; j < i; j++) 
        {
            printf(" ");
        }
          
        // for printing the star(*)
        for (int j = 1; j <= i; j++) 
        {
            cout << "*";
        }
        cout << endl;
    }
}
  
// driver code
int main()
{
    // get the value from user
    int n = 5;
      
    // function calling
    arrow(n);
  
    return 0;
}

                    

Java

// Java Implementation to
// print the above pattern
import java.io.*;
  
class GFG {
  
// arrow function 
static void arrow(int n)
{
    // Prints the upper part of the arrow
    for (int i = 1; i <= n; i++) 
    {
        // for the spacing to form
        // the point of the arrow
        for (int j = i; j < n; j++) 
        {
            System.out.print(" ");
        }
          
        // for printing the star(*)
        for (int j = i; j <= n; j++) 
        {
            System.out.print("*");
        }
              
    System.out.println();
    }
      
    // Prints lower part of the arrow
    for (int i = 2; i <= n; i++)
    {
        // for the spacing to form
        // the point of the arrow
        for (int j = 1; j < i; j++) 
        {
            System.out.print(" ");
        }
          
        // for printing the star(*)
        for (int j = 1; j <= i; j++) 
        {
            System.out.print("*");
        }
    System.out.print('\n');
    }
}
  
// driver code
public static void main(String[] Argv) {
      
    // get the value from user
    int n = 5;
      
    // function calling
    arrow(n);
}
}
  
// this code is contributed by 'vt_m'

                    

Python3

# Python Implementation to 
# print the pattern
   
# arrow function 
def arrow(n):
  
    # Prints the upper part of the arrow
    for i in range(1, n+1): 
      
        # for the spacing to form
        # the point of the arrow
        for j in range(i, n): 
          
            print(" ", end="")
          
        # for printing the star(*)
        for j in range(i, n+1): 
          
            print("*", end="")
          
        print()
       
    # Prints lower part of the arrow
    for i in range(2, n+1):
      
        # for the spacing to form
        # the point of the arrow
        for j in range(1, i): 
          
            print(" ", end="")
          
        # for printing the star(*)
        for j in range(1, i+1): 
          
            print("*", end="")
          
        print()
   
# driver code
# get the value from the user
n = 5
       
# function calling
arrow(n)
  
# This code is contributed 
# by Anant Agarwal.

                    

C#

// C# Implementation to
// print the above pattern
using System;
  
class GFG {
  
// arrow function 
static void arrow(int n)
{
    // Prints the upper part of the arrow
    for (int i = 1; i <= n; i++) 
    {
        // for the spacing to form
        // the point of the arrow
        for (int j = i; j < n; j++) 
        {
            Console.Write(" ");
        }
          
        // for printing the star(*)
        for (int j = i; j <= n; j++) 
        {
            Console.Write("*");
        }
              
           Console.WriteLine();
    }
      
    // Prints lower part of the arrow
    for (int i = 2; i <= n; i++)
    {
        // for the spacing to form
        // the point of the arrow
        for (int j = 1; j < i; j++) 
        {
            Console.Write(" ");
        }
          
        // for printing the star(*)
        for (int j = 1; j <= i; j++) 
        {
            Console.Write("*");
        }
         Console.WriteLine();
    }
}
  
// driver code
public static void Main() {
      
    // get the value from user
    int n = 5;
      
    // function calling
    arrow(n);
}
}
  
// this code is contributed by 'vt_m'

                    

PHP

<?php
// PHP Implementation to print
// the pattern
  
function arrow($n)
{
    // Prints the upper part of 
    // the arrow
    for ($i = 1; $i <= $n; $i++) 
    {
        // for the spacing to form
        // the point of the arrow
        for ($j = $i; $j < $n; $j++) 
        {
            echo " ";
        }
          
        // for printing the star(*)
        for ($j = $i; $j <= $n; $j++) 
        {
            echo "*";
        }
        echo "\n";
    }
      
    // Prints lower part of the arrow
    for ($i = 2; $i <= $n; $i++)
    {
        // for the spacing to form
        // the point of the arrow
        for ($j = 1; $j < $i; $j++) 
        {
            echo " ";
        }
          
        // for printing the star(*)
        for ($j = 1; $j <= $i; $j++) 
        {
            echo "*";
        }
        echo "\n";
    }
}
  
// Driver code
$n = 5;
arrow($n);
  
// This code is contributed by mits
?>

                    

Javascript

<script>
  
      // JavaScript Implementation 
      // to print the pattern
  
      // arrow function
      function arrow(n)
      {
        // Prints the upper part of the arrow
        for (var i = 1; i <= n; i++) 
        {
          // for the spacing to form
          // the point of the arrow
          for (var j = i; j < n; j++) 
          {
            document.write("  ");
          }
  
          // for printing the star(*)
          for (var j = i; j <= n; j++) 
          {
            document.write("*");
          }
          document.write("<br>");
        }
  
        // Prints lower part of the arrow
        for (var i = 2; i <= n; i++)
        {
          // for the spacing to form
          // the point of the arrow
          for (var j = 1; j < i; j++) {
            document.write("  ");
          }
  
          // for printing the star(*)
          for (var j = 1; j <= i; j++) 
          {
            document.write("*");
          }
          document.write("<br>");
        }
      }
  
      // driver code
        
      // get the value from user
      var n = 5;
        
      // function calling
      arrow(n);
</script>

                    

Output :  

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

Time Complexity : O(n2) ,where n is the given input number.

Space Complexity : O(1) ,as we are not using any extra space.
 



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