Área de un círculo inscrito en un rectángulo que está inscrito en un semicírculo

Dado un semicírculo de radio R , que inscribe un rectángulo de largo L y ancho B , que a su vez inscribe un círculo de radio r . La tarea es encontrar el área del círculo con radio r.
Ejemplos: 
 

Input : R = 2
Output : 1.57

Input : R = 5
Output : 9.8125

Enfoque :
 

Sabemos que el rectángulo más grande que se puede inscribir dentro del semicírculo tiene longitud, l=√2R/2
ancho, b=R/√2 ( Consulte
Además, el círculo más grande que se puede inscribir dentro del rectángulo tiene radio, r=b/2=R/2√2 ( Consulte
Así que el área del círculo, A=π*r^2=π(R/2√2)^2 
 

C++

// C++ Program to find the area of the circle
// inscribed within the rectangle which in turn
// is inscribed in a semicircle
#include <bits/stdc++.h>
using namespace std;
 
// Function to find the area of the circle
float area(float r)
{
 
    // radius cannot be negative
    if (r < 0)
        return -1;
 
    // area of the circle
    float area = 3.14 * pow(r / (2 * sqrt(2)), 2);
    return area;
}
 
// Driver code
int main()
{
    float a = 5;
    cout << area(a) << endl;
    return 0;
}

Java

// Java Program to find the area of the circle
// inscribed within the rectangle which in turn
// is inscribed in a semicircle
 
import java.io.*;
 
class GFG {
 
 
// Function to find the area of the circle
static float area(float r)
{
 
    // radius cannot be negative
    if (r < 0)
        return -1;
 
    // area of the circle
    float area = (float)(3.14 * Math.pow(r / (2 * Math.sqrt(2)), 2));
    return area;
}
 
// Driver code
 
    public static void main (String[] args) {
            float a = 5;
    System.out.println( area(a));
    }
}
 
 // This code is contributed by ajit

Python3

# Python 3 Program to find the
# area of the circle inscribed
# within the rectangle which in
# turn is inscribed in a semicircle
from math import pow, sqrt
 
# Function to find the area
# of the circle
def area(r):
     
    # radius cannot be negative
    if (r < 0):
        return -1
 
    # area of the circle
    area = 3.14 * pow(r / (2 * sqrt(2)), 2);
     
    return area;
 
# Driver code
if __name__ == '__main__':
    a = 5
    print("{0:.6}".format(area(a)))
 
# This code is contributed By
# Surendra_Gangwar

C#

// C# Program to find the area of
// the circle inscribed within the
// rectangle which in turn is
// inscribed in a semicircle
using System;
 
class GFG
{
 
// Function to find the area
// of the circle
static float area(float r)
{
 
    // radius cannot be negative
    if (r < 0)
        return -1;
 
    // area of the circle
    float area = (float)(3.14 * Math.Pow(r /
                        (2 * Math.Sqrt(2)), 2));
    return area;
}
 
// Driver code
static public void Main (String []args)
{
    float a = 5;
    Console.WriteLine(area(a));
}
}
 
// This code is contributed
// by Arnab Kundu

PHP

<?php
// PHP Program to find the area
// of the circle inscribed within
// the rectangle which in turn
// is inscribed in a semicircle
 
// Function to find the area
// of the circle
function area($r)
{
    // radius cannot be negative
    if ($r < 0)
        return -1;
 
    // area of the circle
    $area = 3.14 * pow($r /
              (2 * sqrt(2)), 2);
    return $area;
}
 
// Driver code
$a = 5;
echo area($a);
 
// This code is contributed by mits

Javascript

<script>
// javascript Program to find the area of the circle
// inscribed within the rectangle which in turn
// is inscribed in a semicircle
 
// Function to find the area of the circle
function area(r)
{
 
    // radius cannot be negative
    if (r < 0)
        return -1;
 
    // area of the circle
    var area = (3.14 * Math.pow(r / (2 * Math.sqrt(2)), 2));
    return area;
}
 
// Driver code
var a = 5;
document.write( area(a).toFixed(6));
 
// This code contributed by shikhasingrajput
 
</script>
Producción: 

9.8125

 

Complejidad de tiempo: O (logn)

Espacio Auxiliar: O(1)

Publicación traducida automáticamente

Artículo escrito por IshwarGupta y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *