Take the user choice and print 2D shapes based on the choice. A shape with only two dimensions (such as width and height) and no thickness. Squares, Circles, Triangles etc are two dimensional objects. These shapes mostly contain mathematical figures such are a line, square, triangle, rectangle and hexagon. The shapes are given below :
Circle : Radius = 4 ***** ** ** ** ** * * * * * * ** ** ** ** ***** Square : Side = 4 **** * * * * **** Rectangle : Length = 3, Breadth = 8 ******** * * ******** Triangle : Side = 4 * * * * * ******* Hexagon : Side = 4 **** ****** ******** ********** ******** ****** ****
Follow the code below to print the different 2D shapes :
C++
// C++ implementation of menu driven // programme to print solid 2D shapes #include <bits/stdc++.h> using namespace std; // Function to print a circle void circle( int radius) { for ( int i = 0; i <= 2 * radius; i++) { for ( int j = 0; j <= 2 * radius; j++) { double distance = sqrt (( double )(i - radius) * (i - radius) + (j - radius) * (j - radius)); if (distance > radius - 0.5 && distance < radius + 0.5) printf ( "*" ); else printf ( " " ); } printf ( "\n" ); } } // Function to print a square or a rectangle void rectangle( int l, int b) { int i, j; for (i = 1; i <= l; i++) { for (j = 1; j <= b; j++) if (i == 1 || i == l || j == 1 || j == b) printf ( "*" ); else printf ( " " ); printf ( "\n" ); } } // Function to print triangle void triangle( int side) { int i, j; for (i = 1; i <= side; i++) { for (j = i; j < side; j++) printf ( " " ); for (j = 1; j <= (2 * i - 1); j++) { if (i == side || j == 1 || j == (2 * i - 1)) printf ( "*" ); else printf ( " " ); } printf ( "\n" ); } } // Function to print hexagon void hexagon( int length) { int l, j, i, k; for (i = 1, k = length, l = 2 * length - 1; i < length; i++, k--, l++) { for (j = 0; j < 3 * length; j++) if (j >= k && j <= l) printf ( "*" ); else printf ( " " ); printf ( "\n" ); } for (i = 0, k = 1, l = 3 * length - 2; i < length; i++, k++, l--) { for (j = 0; j < 3 * length; j++) if (j >= k && j <= l) printf ( "*" ); else printf ( " " ); printf ( "\n" ); } } // Function takes user choice void printPattern( int choice) { int radius, length, breadth, side; switch (choice) { // For Circle case 1: radius = 4; circle(radius); break ; // For rectangle/square case 2: length = 3, breadth = 8; rectangle(length, breadth); break ; // For triangle case 3: side = 6; triangle(side); break ; // For hexagon case 4: side = 4; hexagon(side); break ; default : printf ( "Wrong choice\n" ); } } // Driver Function int main() { int choice = 3; printPattern(choice); return 0; } |
Java
// Java implementation of menu driven // programme to print solid 2D shapes class GFG { // Function to print a circle static void circle( int radius) { for ( int i = 0 ; i <= 2 * radius; i++) { for ( int j = 0 ; j <= 2 * radius; j++) { double distance = Math.sqrt(( double )(i - radius) * (i - radius) + (j - radius) * (j - radius)); if (distance > radius - 0.5 && distance < radius + 0.5 ) System.out.print( "*" ); else System.out.print( " " ); } System.out.println(); } } // Function to print a square or a rectangle static void rectangle( int l, int b) { int i, j; for (i = 1 ; i <= l; i++) { for (j = 1 ; j <= b; j++) if (i == 1 || i == l || j == 1 || j == b) System.out.print( "*" ); else System.out.print( " " ); System.out.println(); } } // Function to print triangle static void triangle( int side) { int i, j; for (i = 1 ; i <= side; i++) { for (j = i; j < side; j++) System.out.print( " " ); for (j = 1 ; j <= ( 2 * i - 1 ); j++) { if (i == side || j == 1 || j == ( 2 * i - 1 )) System.out.print( "*" ); else System.out.print( " " ); } System.out.println(); } } // Function to print hexagon static void hexagon( int length) { int l, j, i, k; for (i = 1 , k = length, l = 2 * length - 1 ; i < length; i++, k--, l++) { for (j = 0 ; j < 3 * length; j++) if (j >= k && j <= l) System.out.print( "*" ); else System.out.print( " " ); System.out.println(); } for (i = 0 , k = 1 , l = 3 * length - 2 ; i < length; i++, k++, l--) { for (j = 0 ; j < 3 * length; j++) if (j >= k && j <= l) System.out.print( "*" ); else System.out.print( " " ); System.out.println(); } } // Function takes user choice static void printPattern( int choice) { int radius, length, breadth, side; switch (choice) { // For Circle case 1 : radius = 4 ; circle(radius); break ; // For rectangle/square case 2 : length = 3 ; breadth = 8 ; rectangle(length, breadth); break ; // For triangle case 3 : side = 6 ; triangle(side); break ; // For hexagon case 4 : side = 4 ; hexagon(side); break ; default : System.out.print( "Wrong choice\n" ); } } // Driver Program to test above function public static void main(String arg[]) { int choice = 3 ; printPattern(choice); } } // This code is contributed by Anant Agarwal. |
Python3
# Python implementation to # print solid 2D shapes import math # def to print a circle def circle(radius) : for i in range ( 0 , 2 * radius + 1 ) : for j in range ( 0 , 2 * radius + 1 ) : distance = math.sqrt((i - radius) * (i - radius) + (j - radius) * (j - radius)) if (distance > radius - 0.5 and distance < radius + 0.5 ) : print ( "*" , end = "") else : print ( " " , end = "") print () # def to print a # square or a rectangle def rectangle(l, b) : for i in range ( 1 , l + 1 ) : for j in range ( 1 , b + 1 ) : if (i = = 1 or i = = l or j = = 1 or j = = b) : print ( "*" , end = "") else : print ( " " , end = "") print () # def to print triangle def triangle(side) : for i in range ( 1 , side + 1 ) : for j in range (i, side) : print ( " " , end = "") for j in range ( 1 , 2 * i) : if (i = = side or j = = 1 or j = = ( 2 * i - 1 )) : print ( "*" , end = "") else : print ( " " , end = "") print () # def to print hexagon def hexagon(length) : k = length l = 2 * length - 1 for i in range ( 1 , length) : for j in range ( 0 , 3 * length) : if (j > = k and j < = l) : print ( "*" , end = "") else : print ( " " , end = "") print () k = k - 1 l = l + 1 k = 1 l = 3 * length - 2 for i in range ( 0 , length) : for j in range ( 0 , 3 * length) : if (j > = k and j < = l) : print ( "*" , end = "") else : print ( " " , end = "") print () k = k + 1 l = l - 1 # def takes user choice def printPattern(choice) : # For Circle if (choice = = 1 ) : circle( 4 ) # For rectangle/square elif (choice = = 2 ) : rectangle( 3 , 8 ) # For triangle elif (choice = = 3 ) : triangle( 6 ) # For hexagon elif (choice = = 4 ) : hexagon( 4 ) # Driver Code choice = 3 printPattern(choice) # This code is contributed by # Manish Shaw(manishshaw1) |
C#
// C# implementation of menu driven // programme to print solid 2D shapes using System; class GFG { // Function to print a circle static void circle( int radius) { for ( int i = 0; i <= 2 * radius; i++) { for ( int j = 0; j <= 2 * radius; j++) { double distance = Math.Sqrt(( double )(i - radius) * (i - radius) + (j - radius) * (j - radius)); if (distance > radius - 0.5 && distance < radius + 0.5) Console.Write( "*" ); else Console.Write( " " ); } Console.WriteLine(); } } // Function to print a square or a rectangle static void rectangle( int l, int b) { int i, j; for (i = 1; i <= l; i++) { for (j = 1; j <= b; j++) if (i == 1 || i == l || j == 1 || j == b) Console.Write( "*" ); else Console.Write( " " ); Console.WriteLine(); } } // Function to print triangle static void triangle( int side) { int i, j; for (i = 1; i <= side; i++) { for (j = i; j < side; j++) Console.Write( " " ); for (j = 1; j <= (2 * i - 1); j++) { if (i == side || j == 1 || j == (2 * i - 1)) Console.Write( "*" ); else Console.Write( " " ); } Console.WriteLine(); } } // Function to print hexagon static void hexagon( int length) { int l, j, i, k; for (i = 1, k = length, l = 2 * length - 1; i < length; i++, k--, l++) { for (j = 0; j < 3 * length; j++) if (j >= k && j <= l) Console.Write( "*" ); else Console.Write( " " ); Console.WriteLine(); } for (i = 0, k = 1, l = 3 * length - 2; i < length; i++, k++, l--) { for (j = 0; j < 3 * length; j++) if (j >= k && j <= l) Console.Write( "*" ); else Console.Write( " " ); Console.WriteLine(); } } // Function takes user choice static void printPattern( int choice) { int radius, length, breadth, side; switch (choice) { // For Circle case 1: radius = 4; circle(radius); break ; // For rectangle/square case 2: length = 3; breadth = 8; rectangle(length, breadth); break ; // For triangle case 3: side = 6; triangle(side); break ; // For hexagon case 4: side = 4; hexagon(side); break ; default : Console.Write( "Wrong choice" ); break ; } } // Driver Program to test above function public static void Main() { int choice = 3; printPattern(choice); } } // This code is contributed by vt_m. |
PHP
<?php // PHP implementation to // print solid 2D shapes // Function to print a circle function circle( $radius ) { for ( $i = 0; $i <= 2 * $radius ; $i ++) { for ( $j = 0; $j <= 2 * $radius ; $j ++) { $distance = sqrt(( $i - $radius ) * ( $i - $radius ) + ( $j - $radius ) * ( $j - $radius )); if ( $distance > $radius - 0.5 && $distance < $radius + 0.5) echo "*" ; else echo " " ; } echo "\n" ; } } // Function to print a // square or a rectangle function rectangle( $l , $b ) { for ( $i = 1; $i <= $l ; $i ++) { for ( $j = 1; $j <= $b ; $j ++) if ( $i == 1 || $i == $l || $j == 1 || $j == $b ) echo "*" ; else echo " " ; echo "\n" ; } } // Function to print triangle function triangle( $side ) { for ( $i = 1; $i <= $side ; $i ++) { for ( $j = $i ; $j < $side ; $j ++) echo " " ; for ( $j = 1; $j <= (2 * $i - 1); $j ++) { if ( $i == $side || $j == 1 || $j == (2 * $i - 1)) echo "*" ; else echo " " ; } echo "\n" ; } } // Function to print hexagon function hexagon( $length ) { for ( $i = 1, $k = $length , $l = 2 * $length - 1; i < $length ; $i ++, $k --, $l ++) { for ( $j = 0; $j < 3 * $length ; $j ++) if ( $j >= $k && $j <= $l ) echo "*" ; else echo " " ; echo "\n" ; } for ( $i = 0, $k = 1, $l = 3 * $length - 2; $i < $length ; $i ++, $k ++, $l --) { for ( $j = 0; $j < 3 * $length ; $j ++) if ( $j >= $k && $j <= $l ) echo "*" ; else echo " " ; echo "\n" ; } } // Function takes user choice function printPattern( $choice ) { switch ( $choice ) { // For Circle case 1: $radius = 4; circle( $radius ); break ; // For rectangle/square case 2: $length = 3; $breadth = 8; rectangle( $length , $breadth ); break ; // For triangle case 3: $side = 6; triangle( $side ); break ; // For hexagon case 4: $side = 4; hexagon( $side ); break ; default : echo "Wrong choice\n" ; } } // Driver Code $choice = 3; printPattern( $choice ); // This code is contributed by Mithun Kumar ?> |
Javascript
// Function to print a circle function circle(radius) { for (let i = 0; i <= 2 * radius; i++) { let row = '' ; for (let j = 0; j <= 2 * radius; j++) { const distance = Math.sqrt((i - radius) ** 2 + (j - radius) ** 2); if (distance > radius - 0.5 && distance < radius + 0.5) { row += '*' ; } else { row += ' ' ; } } console.log(row); } } // Function to print a square or a rectangle function rectangle(length, breadth) { for (let i = 1; i <= length; i++) { let row = '' ; for (let j = 1; j <= breadth; j++) { if (i === 1 || i === length || j === 1 || j === breadth) { row += '*' ; } else { row += ' ' ; } } console.log(row); } } // Function to print triangle function triangle(side) { for (let i = 1; i <= side; i++) { let row = '' ; for (let j = i; j < side; j++) { row += ' ' ; } for (let j = 1; j <= 2 * i - 1; j++) { if (i === side || j === 1 || j === 2 * i - 1) { row += '*' ; } else { row += ' ' ; } } console.log(row); } } // Function to print hexagon function hexagon(length) { for (let i = 1, k = length, l = 2 * length - 1; i < length; i++, k--, l++) { let row = '' ; for (let j = 0; j < 3 * length; j++) { if (j >= k && j <= l) { row += '' ; } else { row += ' ' ; } } console.log(row); } for (let i = 0, k = 1, l = 3 * length - 2; i < length; i++, k++, l--) { let row = '' ; for (let j = 0; j < 3 * length; j++) { if (j >= k && j <= l) { row += '' ; } else { row += ' ' ; } } console.log(row); } } // Function takes user choice function printPattern(choice) { let radius, length, breadth, side; switch (choice) { // For Circle case 1: radius = 4; circle(radius); break ; // For rectangle/square case 2: length = 3; breadth = 8; rectangle(length, breadth); break ; // For triangle case 3: side = 6; triangle(side); break ; // For hexagon case 4: side = 4; hexagon(side); break ; default : console.log( 'Wrong choice' ); } } // Driver Program to test above function const choice = 3; printPattern(choice); |
Output :
* * * * * * * * * ***********
Feeling lost in the world of random DSA topics, wasting time without progress? It’s time for a change! Join our DSA course, where we’ll guide you on an exciting journey to master DSA efficiently and on schedule.
Ready to dive in? Explore our Free Demo Content and join our DSA course, trusted by over 100,000 neveropen!
Ready to dive in? Explore our Free Demo Content and join our DSA course, trusted by over 100,000 neveropen!