Area of a circle inscribed in a rectangle which is inscribed in a semicircle
Last Updated :
07 Aug, 2022
Given a semicircle with radius R, which inscribes a rectangle of length L and breadth B, which in turn inscribes a circle of radius r. The task is to find the area of the circle with radius r.
Examples:
Input : R = 2
Output : 1.57
Input : R = 5
Output : 9.8125
Approach:
We know the biggest rectangle that can be inscribed within the semicircle has, length, l=?2R/2 &
breadth, b=R/?2(Please refer)
Also, the biggest circle that can be inscribed within the rectangle has radius, r=b/2=R/2?2(Please refer)
So area of the circle, A=?*r^2=?(R/2?2)^2
C++
#include <bits/stdc++.h>
using namespace std;
float area( float r)
{
if (r < 0)
return -1;
float area = 3.14 * pow (r / (2 * sqrt (2)), 2);
return area;
}
int main()
{
float a = 5;
cout << area(a) << endl;
return 0;
}
|
Java
import java.io.*;
class GFG {
static float area( float r)
{
if (r < 0 )
return - 1 ;
float area = ( float )( 3.14 * Math.pow(r / ( 2 * Math.sqrt( 2 )), 2 ));
return area;
}
public static void main (String[] args) {
float a = 5 ;
System.out.println( area(a));
}
}
|
Python3
from math import pow , sqrt
def area(r):
if (r < 0 ):
return - 1
area = 3.14 * pow (r / ( 2 * sqrt( 2 )), 2 );
return area;
if __name__ = = '__main__' :
a = 5
print ( "{0:.6}" . format (area(a)))
|
C#
using System;
class GFG
{
static float area( float r)
{
if (r < 0)
return -1;
float area = ( float )(3.14 * Math.Pow(r /
(2 * Math.Sqrt(2)), 2));
return area;
}
static public void Main (String []args)
{
float a = 5;
Console.WriteLine(area(a));
}
}
|
PHP
<?php
function area( $r )
{
if ( $r < 0)
return -1;
$area = 3.14 * pow( $r /
(2 * sqrt(2)), 2);
return $area ;
}
$a = 5;
echo area( $a );
|
Javascript
<script>
function area(r)
{
if (r < 0)
return -1;
var area = (3.14 * Math.pow(r / (2 * Math.sqrt(2)), 2));
return area;
}
var a = 5;
document.write( area(a).toFixed(6));
</script>
|
Time Complexity: O(1)
Auxiliary Space: O(1)
Like Article
Suggest improvement
Share your thoughts in the comments
Please Login to comment...