Open In App

Area of largest semicircle that can be drawn inside a square

Given a square of side a, the task is to find the area of the largest semi-circle that can be drawn inside the square.
 

Examples:  



Input: a = 3
Output: 4.84865

Input: a = 4
Output: 8.61982

 

Approach 
The semicircle of maximal area inscribed in the square has its diameter parallel to a diagonal, and its radius rmax is given as:
 



 

OY = r cos 45 = r/ ?2
a = AB 
  = r + r/?2
  = r(1 + 1/?2)
r = a / (1 + 1/?2)
  = a*?2 / (?2 + 1)
r = a*?2*(?2-1)
r = a*2 - a ?2
  = a*(2-?2)
Area of the required semicircle
         = pi * r2/2
         = 3.14*(a*(2-?2))2 / 2




// C++ program to find Area of
// semicircle in a square
 
#include <bits/stdc++.h>
using namespace std;
 
// Function to find area of semicircle
float find_Area(float a)
{
    float R = a * (2.0 - sqrt(2));
    float area = 3.14 * R * R / 2.0;
    return area;
}
 
// Driver code
int main()
{
    // side of a square
    float a = 4;
 
    // Call Function to find
    // the area of semicircle
    cout << " Area of semicircle = "
         << find_Area(a);
 
    return 0;
}




// Java program to find Area of
// semicircle in a square
class GFG {
 
    // Function to find area of semicircle
    static float find_Area(float a)
    {
        float R = a * (float)(2.0 - Math.sqrt(2));
        float area = (float)((3.14 * R * R) / 2.0);
        return area;
    }
     
    // Driver code
    public static void main (String[] args)
    {
        // side of a square
        float a = 4;
     
        // Call Function to find
        // the area of semicircle
        System.out.println(" Area of semicircle = " + find_Area(a));
    }
}
 
// This code is contributed by AnkitRai01




# Python3 program to find Area of
# semicircle in a square
from math import sqrt
 
# Function to find area of semicircle
def find_Area(a) :
 
    R = a * (2.0 - sqrt(2));
    area = 3.14 * R * R / 2.0;
     
    return area;
 
# Driver code
if __name__ == "__main__" :
 
    # side of a square
    a = 4;
 
    # Call Function to find
    # the area of semicircle
    print("Area of semicircle =",find_Area(a));
 
# This code is contributed by AnkitRai01




// C# program to find Area of
// semicircle in a square
using System;
 
class GFG {
 
    // Function to find area of semicircle
    static float find_Area(float a)
    {
        float R = a * (float)(2.0 - Math.Sqrt(2));
        float area = (float)((3.14 * R * R) / 2.0);
        return area;
    }
     
    // Driver code
    public static void Main (string[] args)
    {
        // side of a square
        float a = 4;
     
        // Call Function to find
        // the area of semicircle
        Console.WriteLine(" Area of semicircle = " + find_Area(a));
    }
}
 
// This code is contributed by AnkitRai01




<script>
 
// Javascript program to find Area of
// semicircle in a square
 
// Function to find area of semicircle
function find_Area(a)
{
    var R = a * (2.0 - Math.sqrt(2));
    var area = 3.14 * R * R / 2.0;
    return area;
}
 
// Driver code
 
// side of a square
var a = 4;
// Call Function to find
// the area of semicircle
document.write(" Area of semicircle = "
      + find_Area(a));
 
// This code is contributed by rutvik_56.
</script>

Output: 
Area of semicircle = 8.61982

 

Time Complexity: O(1)

Auxiliary Space: O(1)


Article Tags :