Program to print 2D shapes
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 ?> |
Output :
* * * * * * * * * ***********