Given a number N, print a hollow square of side with N asterisks(‘*’), and inside it print a hollow square of side N-4 asterisks(‘*’).
Examples :
Input : 6 Output : ****** * * * ** * * ** * * * ****** Input :9 Output : ********* * * * ***** * * * * * * * * * * * * * * ***** * * * *********
The idea is to run two nested loops from 1 to n for rows and columns and now to check for conditions when to print an asterisk(‘*’) and when to print space(‘ ‘). The condition for printing asterisks will be:
// This will print asterisks on the boundary (i == 1 || i == n || j == 1 || j == n) // This will print the asterisks on the boundary // of inner square (i >= 3 && i = 3 && j <= n - 2) && (i == 3 || i == n - 2 || j == 3 || j == n - 2))
All of the indexes which do not satisfy the above condition will contain space.
Below is the implementation of above idea:
C++
// C++ program to print square inside// a square pattern#include <iostream>using namespace std;// Function to print the pattern square // inside a squarevoid printPattern(int n) { int i, j; // To access rows of the square for (i = 1; i <= n; i++) { // To access columns of the square for (j = 1; j <= n; j++) { // For printing the required square pattern if ((i == 1 || i == n || j == 1 || j == n) || (i >= 3 && i <= n - 2 && j >= 3 && j <= n - 2) && (i == 3 || i == n - 2 || j == 3 || j == n - 2)) { // Prints star(*) cout<<"*"; } else { // Prints space(" ") cout<<" "; } } cout<<endl; }}// Driver Codeint main() { int n = 7; printPattern(n); return 0;}// This code is contributed by Shivam.Pradhan. |
C
// C program to print square inside// a square pattern#include <stdio.h>// Function to print the pattern square // inside a squarevoid printPattern(int n) { int i, j; // To access rows of the square for (i = 1; i <= n; i++) { // To access columns of the square for (j = 1; j <= n; j++) { // For printing the required square pattern if ((i == 1 || i == n || j == 1 || j == n) || (i >= 3 && i <= n - 2 && j >= 3 && j <= n - 2) && (i == 3 || i == n - 2 || j == 3 || j == n - 2)) { // Prints star(*) printf("*"); } else { // Prints space(" ") printf(" "); } } printf("\n"); }}// Driver Codeint main() { int n = 7; printPattern(n); return 0;} |
Java
// Java program to print square inside// a square patternimport java.lang.*;class GFG { // Function to print the pattern square// inside a squarestatic void printPattern(int n) { // To access rows of the square for (int i = 1; i <= n; i++) { // To access columns of the square for (int j = 1; j <= n; j++) { /*** For printing the required square pattern ***/ if ((i == 1 || i == n || j == 1 || j == n) || (i >= 3 && i <= n - 2 && j >= 3 && j <= n - 2) && (i == 3 || i == n - 2 || j == 3 || j == n - 2)) { // Prints star(*) System.out.print("*"); } else { // Prints space(" ") System.out.print(" "); } } System.out.print("\n"); }}// Driver codepublic static void main(String[] args) { int n = 7; printPattern(n);}}// This code is contributed by Anant Agarwal. |
Python3
# Python program to# print square inside# a square pattern# Function to print# the pattern square # inside a squaredef printPattern(n): # To access rows of the square for i in range(1,n+1): # To access columns of the square for j in range(1,n+1): # For printing the required square pattern if ((i == 1 or i == n or j == 1 or j == n) or (i >= 3 and i <= n - 2 and j >= 3 and j <= n - 2) and (i == 3 or i == n - 2 or j == 3 or j == n - 2)): print("*",end="") # Prints star(*) else: print(" ",end="") # Prints space(" ") print() # Driver coden = 7 printPattern(n)# This code is contributed# by Anant Agarwal. |
C#
// C# program to print square inside// a square patternusing System;class GFG { // Function to print the pattern square // inside a square static void printPattern(int n) { // To access rows of the square for (int i = 1; i <= n; i++) { // To access columns of the square for (int j = 1; j <= n; j++) { /*** For printing the required square pattern ***/ if ((i == 1 || i == n || j == 1 || j == n) || (i >= 3 && i <= n - 2 && j >= 3 && j <= n - 2) && (i == 3 || i == n - 2 || j == 3 || j == n - 2)) { // Prints star(*) Console.Write("*"); } else { // Prints space(" ") Console.Write(" "); } } Console.WriteLine(); } } // Driver code public static void Main() { int n = 7; printPattern(n); }}// This code is contributed by vt_m. |
PHP
<?php// PHP program to print square inside// a square pattern// Function to print the pattern square // inside a squarefunction printPattern($n) { // To access rows of the square for ($i = 1; $i <= $n; $i++) { // To access columns of the square for ($j = 1; $j <= $n; $j++) { // For printing the required // square pattern if (($i == 1 || $i == $n || $j == 1 || $j == $n) || ($i >= 3 && $i <= $n - 2 && $j >= 3 && $j <= $n - 2) && ($i == 3 || $i == $n - 2 || $j == 3 || $j == $n - 2)) { // Prints star(*) echo "*"; } else { // Prints space " " echo " "; } } echo"\n"; }}// Driver Code$n = 7; printPattern($n);// This code is contributed by Mithun Kumar?> |
Javascript
// JavaScript program to print square inside// a square patternfunction printPattern(n) {// To access rows of the squarefor (let i = 1; i <= n; i++) { // To access columns of the square for (let j = 1; j <= n; j++) { /*** For printing the required square pattern ***/ if ((i == 1 || i == n || j == 1 || j == n) || (i >= 3 && i <= n - 2 && j >= 3 && j <= n - 2) && (i == 3 || i == n - 2 || j == 3 || j == n - 2)) { // Prints star(*) process.stdout.write("*"); } else { // Prints space(" ") process.stdout.write(" "); } } process.stdout.write("\n");}}// Driver codelet n = 7;printPattern(n); |
Output :
******* * * * *** * * * * * * *** * * * *******
Time Complexity: O(n2)
Auxiliary Space: O(1)
Ready to dive in? Explore our Free Demo Content and join our DSA course, trusted by over 100,000 neveropen!

… [Trackback]
[…] Here you can find 69671 more Information on that Topic: geeksforgeeks.org/program-to-print-square-inside-a-square/ […]
… [Trackback]
[…] Find More Information here to that Topic: geeksforgeeks.org/program-to-print-square-inside-a-square/ […]
… [Trackback]
[…] Information on that Topic: geeksforgeeks.org/program-to-print-square-inside-a-square/ […]