Given a number N such that N >= 5. The task is to print a Hut Star Pattern with (N + 3) rows as shown in the below examples.
Examples:
Input: N = 5 Output: * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * Input: N = 7 Output: * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Approach: The upper N rows of the pattern will be a triangle and the last 3 rows will contain two space-separated rectangles as shown in the above examples.
- Firstly print the upper triangle with N rows.
- Then print the 2 lower rectangles of the Hut in 3 rows.
Below is the implementation of the above approach:
C++
// C++ program to print // the Hut Star Pattern #include <iostream> using namespace std; // Function to print the Hut-Star Pattern void printHutStar( int n) { int i, j; // Printing the upper triangle for (i = 0; i < n; i++) { // Left space triangle for (j = i + 1; j < n; j++) cout << " " ; // Center Star triangle for (j = 0; j < (2 * i + 1); j++) cout << "*" ; cout << endl ; } // Printing Lower rectangles for (i = 0; i < 3; i++) { // Left rectangle for (j = 0; j < 3; j++) cout << "*" ; // Center Space rectangle for (j = 0; j < (2 * n - 7); j++) cout << " " ; // Right rectangle for (j = 0; j < 3; j++) cout << "*" ; cout << endl ; } } int main() { int n = 7; // function calling printHutStar(n); return 0; // This code is contributed // by ANKITRAI1 } |
Java
// Java program to print // the Hut Star Pattern public class GFG { // Function to print the Hut-Star Pattern static void printHutStar( int n) { int i, j; // Printing the upper triangle for (i = 0 ; i < n; i++) { // Left space triangle for (j = i + 1 ; j < n; j++) System.out.print( " " ); // Center Star triangle for (j = 0 ; j < ( 2 * i + 1 ); j++) System.out.print( "*" ); System.out.println(); } // Printing Lower rectangles for (i = 0 ; i < 3 ; i++) { // Left rectangle for (j = 0 ; j < 3 ; j++) System.out.print( "*" ); // Center Space rectangle for (j = 0 ; j < ( 2 * n - 7 ); j++) System.out.print( " " ); // Right rectangle for (j = 0 ; j < 3 ; j++) System.out.print( "*" ); System.out.println(); } } // Driver Code public static void main(String args[]) { int n = 7 ; printHutStar(n); } } |
Python3
# Python program to print # the Hut Star Pattern # Function to print the Hut-Star Pattern def printHutStar(n): # Printing the upper triangle for i in range (n): # Left space triangle for j in range (i + 1 , n): print ( ' ' , end = '') # Center Star triangle for j in range ( 0 , 2 * i + 1 ): print ( '*' , end = '') print () # Printing the lower rectangles for i in range ( 3 ): # Left rectangle for j in range ( 3 ): print ( '*' , end = '') # Center Space rectangle for j in range ( 2 * n - 7 ): print ( ' ' , end = '') # Right rectangle for j in range ( 3 ): print ( '*' , end = '') print () # Driver Code n = 7 # function calling printHutStar(n) # This code is contributed # by SamyuktaSHegde |
C#
// C# program to print // the Hut Star Pattern using System; class GFG { // Function to print the Hut-Star Pattern static void printHutStar( int n) { int i, j; // Printing the upper triangle for (i = 0; i < n; i++) { // Left space triangle for (j = i + 1; j < n; j++) Console.Write( " " ); // Center Star triangle for (j = 0; j < (2 * i + 1); j++) Console.Write( "*" ); Console.Write( "\n" ); } // Printing Lower rectangles for (i = 0; i < 3; i++) { // Left rectangle for (j = 0; j < 3; j++) Console.Write( "*" ); // Center Space rectangle for (j = 0; j < (2 * n - 7); j++) Console.Write( " " ); // Right rectangle for (j = 0; j < 3; j++) Console.Write( "*" ); Console.Write( "\n" ); } } // Driver Code public static void Main() { int n = 7; printHutStar(n); } } // This code is contributed by ChitraNayal |
PHP
<?php // PHP program to print // the Hut Star Pattern // Function to print the Hut-Star Pattern function printHutStar( $n ) { // Printing the upper triangle for ( $i = 0; $i < $n ; $i ++) { // Left space triangle for ( $j = $i + 1; $j < $n ; $j ++) echo " " ; // Center Star triangle for ( $j = 0; $j < (2 * $i + 1); $j ++) echo "*" ; echo "\n" ; } // Printing Lower rectangles for ( $i = 0; $i < 3; $i ++) { // Left rectangle for ( $j = 0; $j < 3; $j ++) echo "*" ; // Center Space rectangle for ( $j = 0; $j < (2 * $n - 7); $j ++) echo " " ; // Right rectangle for ( $j = 0; $j < 3; $j ++) echo "*" ; echo "\n" ; } } // Driver Code $n = 7; // function calling printHutStar( $n ); // This code is contributed // by Akanksha Rai |
Javascript
<script> // JavaScript program to print // the Hut Star Pattern // Function to print the Hut-Star Pattern function printHutStar(n) { var i, j; // Printing the upper triangle for (i = 0; i < n; i++) { // Left space triangle for (j = i + 1; j < n; j++) document.write( " " ); // Center Star triangle for (j = 0; j < 2 * i + 1; j++) document.write( "*" ); document.write( "<br>" ); } // Printing Lower rectangles for (i = 0; i < 3; i++) { // Left rectangle for (j = 0; j < 3; j++) document.write( "*" ); // Center Space rectangle for (j = 0; j < 2 * n - 7; j++) document.write( " " ); // Right rectangle for (j = 0; j < 3; j++) document.write( "*" ); document.write( "<br>" ); } } var n = 7; // function calling printHutStar(n); </script> |
* *** ***** ******* ********* *********** ************* *** *** *** *** *** ***
Time Complexity: O(n*n*n)
Auxiliary Space: O(1)
Another method: (Reduce time complexity)
C++
// C++ program to print // the Hut Star Pattern #include<iostream> using namespace std; int main() { int n=7,i,j; //LOOP FOR HUT PYRAMID for (i=0,j=0;i<n;j++) { if (j==n+i) { j=-1; ++i; cout<< "\n" ; } // print Center Star triangle else if ((i+j)>=n-1) { cout<< "*" ; } else cout<< " " ; } //LOOPS FOR LOWER WALLS for ( int k=0;k<3;k++) { // Left and right rectangle for ( int l=0;l<n-1+i;l++) { if (l<=2 || (l<=n-1+i && l>=n-4+i)) cout<< "*" ; else cout<< " " ; } cout<<endl; } } //This code is contributed by KUMARAN |
Java
// Java program to print the Hut Star Pattern class GFG { public static void main(String args[]) { int n = 7 , i, j; // LOOP FOR HUT PYRAMID for (i = 0 , j = 0 ; i < n; j++) { if (j == n + i) { j = - 1 ; ++i; System.out.print( "\n" ); } // print Center Star triangle else if ((i + j) >= n - 1 ) { System.out.print( "*" ); } else { System.out.print( " " ); } } // LOOPS FOR LOWER WALLS for ( int k = 0 ; k < 3 ; k++) { // Left and right rectangle for ( int l = 0 ; l < n - 1 + i; l++) { if (l <= 2 || (l <= n - 1 + i && l >= n - 4 + i)) { System.out.print( "*" ); } else { System.out.print( " " ); } } System.out.print( "\n" ); } } } // This code is contributed // by PrinciRaj1992 |
Python3
# Python3 program to print the # Hut Star Pattern import math as mt if __name__ = = '__main__' : n = 7 i, j = 0 , 0 # LOOP FOR HUT PYRAMID while (i < n): if (j = = n + i): j = - 1 i + = 1 print () elif ((i + j) > = n - 1 ): print ( "*" , end = "") else : print (end = " " ) j + = 1 # LOOPS FOR LOWER WALLS for k in range ( 3 ): # Left and right rectangle for l in range (n - 1 + i): if (l < = 2 or (l < = n - 1 + i and l > = n - 4 + i)): print ( "*" , end = "") else : print (end = " " ) print () # This code is contributed by # Mohit kumar 29 |
C#
// C# program to print the Hut Star Pattern using System; class GFG { public static void Main() { int n = 7, i, j; // LOOP FOR HUT PYRAMID for (i = 0, j = 0; i < n; j++) { if (j == n + i) { j = -1; ++i; Console.Write( "\n" ); } // print Center Star triangle else if ((i + j) >= n - 1) { Console.Write( "*" ); } else { Console.Write( " " ); } } // LOOPS FOR LOWER WALLS for ( int k = 0; k < 3; k++) { // Left and right rectangle for ( int l = 0; l < n - 1 + i; l++) { if (l <= 2 || (l <= n - 1 + i && l >= n - 4 + i)) { Console.Write( "*" ); } else { Console.Write( " " ); } } Console.Write( "\n" ); } } } // This code is contributed // by Akanksha Rai |
PHP
<?php // PHP program to print the // Hut Star Pattern // Driver Code $n = 7; // LOOP FOR HUT PYRAMID for ( $i = 0, $j = 0; $i < $n ; $j ++) { if ( $j == $n + $i ) { $j = -1; ++ $i ; echo ( "\n" ); } // print Center Star triangle else if (( $i + $j ) >= $n - 1) { echo ( "*" ); } else { echo ( " " ); } } // LOOPS FOR LOWER WALLS for ( $k = 0; $k < 3; $k ++) { // Left and right rectangle for ( $l = 0; $l < $n - 1 + $i ; $l ++) { if ( $l <= 2 || ( $l <= $n - 1 + $i && $l >= $n - 4 + $i )) { echo ( "*" ); } else { echo ( " " ); } } echo ( "\n" ); } // This code is contributed // by Mukul singh ?> |
Javascript
<script> // Javascript program to print the Hut Star Pattern var n = 7, i, j; // LOOP FOR HUT PYRAMID for (i = 0, j = 0; i < n; j++) { if (j == n + i) { j = -1; ++i; document.write( "<br/>" ); } // Print Center Star triangle else if ((i + j) >= n - 1) { document.write( "*" ); } else { document.write( " " ); } } // LOOPS FOR LOWER WALLS for (k = 0; k < 3; k++) { // Left and right rectangle for (l = 0; l < n - 1 + i; l++) { if (l <= 2 || (l <= n - 1 + i && l >= n - 4 + i)) { document.write( "*" ); } else { document.write( " " ); } } document.write( "<br/>" ); } // This code is contributed by umadevi9616 </script> |
Time Complexity: O(n2)
Auxiliary Space: O(1)