Given the length of the side of a square a, the task is to find the area of the shaded region formed by the intersection of four semicircles in a square as shown in the image below:
Examples:
Input: a = 10
Output: 57
Input: a = 19
Output: 205.77
Approach: Area of the shaded region will be:
Area(semicircle1) + Area(semicircle2) + Area(semicircle3) + Area(semicircle4) – Area(square).
Since all semicircles are of same radius, therefore, area of all semicircles will be equal. So, the above formula can be written as:
4*(Area of Semicircle) – Area(Square)
The area of a semicircle is (3.14 * r2) / 2 where r is the radius of the semicircle which is equal to a / 2.
Hence, Area of the shaded region = 4 * (3.14 * (a * a) / 8 ) – a * a
Below is the implementation of the above approach:
// C++ implementation of the approach #include <bits/stdc++.h> using namespace std;
// Function to return the area // of the shaded region float findAreaShaded( float a)
{ // Area of the square
float sqArea = a * a;
// Area of the semicircle
float semiCircleArea = (3.14 * (a * a) / 8);
// There are 4 semicircles
// shadedArea = Area of 4 semicircles - Area of square
float ShadedArea = 4 * semiCircleArea - sqArea;
return ShadedArea;
} // Driver code int main()
{ float a = 10;
cout << findAreaShaded(a);
return 0;
} |
// Java implementation of the approach class GFG {
// Function to return the area
// of the shaded region
static float findAreaShaded( float a)
{
// Area of the square
float sqArea = a * a;
// Area of the semicircle
float semiCircleArea = ( float )( 3.14 * (a * a) / 8 );
// There are 4 semicircles
// shadedArea = Area of 4 semicircles - Area of square
float ShadedArea = 4 * semiCircleArea - sqArea;
return ShadedArea;
}
// Driver code
public static void main(String[] args)
{
float a = 10 ;
System.out.println(findAreaShaded(a));
}
} |
# Python3 implementation of the approach # Function to return the area # of the shaded region def findAreaShaded(a):
# Area of the square
sqArea = a * a;
# Area of the semicircle
semiCircleArea = ( 3.14 * (a * a ) / 8 )
# There are 4 semicircles
# shadedArea = Area of 4 semicircles - Area of square
ShadedArea = 4 * semiCircleArea - sqArea ;
return ShadedArea;
# Driver code if __name__ = = '__main__' :
a = 10
print (findAreaShaded(a))
|
// C# implementation of the approach using System;
class GFG
{ // Function to return the area
// of the shaded region
static float findAreaShaded( float a)
{
// Area of the square
float sqArea = a * a;
// Area of the semicircle
float semiCircleArea = ( float )(3.14 * (a * a) / 8);
// There are 4 semicircles
// shadedArea = Area of 4 semicircles - Area of square
float ShadedArea = 4 * semiCircleArea - sqArea;
return ShadedArea;
}
// Driver code
public static void Main()
{
float a = 10;
Console.WriteLine(findAreaShaded(a));
}
} // This code is contributed by mohit kumar 29 |
<?php // PHP implementation of the approach // Function to return the area // of the shaded region function findAreaShaded( $a )
{ // Area of the square
$sqArea = $a * $a ;
// Area of the semicircle
$semiCircleArea = (3.14 * ( $a * $a ) / 8);
// There are 4 semicircles
// shadedArea = Area of 4 semicircles -
// Area of square
$ShadedArea = 4 * $semiCircleArea - $sqArea ;
return $ShadedArea ;
} // Driver code $a = 10;
echo findAreaShaded( $a );
// This code is contributed by Ryuga ?> |
<script> // Javascript implementation of the approach // Function to return the area // of the shaded region function findAreaShaded( a)
{ // Area of the square
let sqArea = a * a;
// Area of the semicircle
let semiCircleArea = (3.14 * (a * a) / 8);
// There are 4 semicircles
// shadedArea = Area of 4 semicircles - Area of square
let ShadedArea = 4 * semiCircleArea - sqArea;
return ShadedArea;
} // driver code
let a = 10;
document.write(findAreaShaded(a));
</script> |
57
Time Complexity: O(1)
Auxiliary Space: O(1)