# Program to print Hut Star pattern

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:
*
* * *
* * * * *
* * * * * * *
* * * * * * * * *
* * * * * * * * * * *
* * * * * * * * * * * * *
* * *               * * *
* * *               * * *
* * *               * * *
```

## Recommended: Please try your approach on {IDE} first, before moving on to the solution.

Approach: The upper N rows od the pattern will be a triangle and the last 3 rows will contain two space-separated rectangles as shown in the above examples.

1. Firstly print the upper triangle with N rows.
2. 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   ` ` `  `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

 `

Output:

```      *
***
*****
*******
*********
***********
*************
***       ***
***       ***
***       ***
```

Another method: (Reduce time complexity)

## C++

 `// C++ program to print ` `// the Hut Star Pattern ` ` `  `#include ` `using` `namespace` `std; ` ` `  `int` `main() ` `{ ` `    ``int` `n=7,i,j; ` `     `  `    ``//LOOP FOR HUT PYRAMID ` `    ``for``(i=0,j=0;i=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-4+i)) ` `                ``cout<<``"*"``; ` `            ``else` `                ``cout<<``" "``; ` `        ``} ` `        ``cout<

## 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

 `= ``\$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 ` `?> `

Output:

```      *
***
*****
*******
*********
***********
*************
***       ***
***       ***
***       ***
```

My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.