Get the best out of our app
GeeksforGeeks App
Open App
Browser
Continue

# Find the area of the shaded region formed by the intersection of four semicircles in a square

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++

 `// C++ implementation of the approach``#include ``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

 `// 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

 `# 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#

 `// 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

 ``

## Javascript

 ``

Output:

`57`

Time Complexity: O(1)

Auxiliary Space: O(1)

My Personal Notes arrow_drop_up