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