Open In App

Largest triangle that can be inscribed in a semicircle

Last Updated : 31 Aug, 2022
Comments
Improve
Suggest changes
Like Article
Like
Report

Given a semicircle with radius r, we have to find the largest triangle that can be inscribed in the semicircle, with base lying on the diameter.
Examples: 
 

Input: r = 5
Output: 25

Input: r = 8
Output: 64


 


 


Approach: From the figure, we can clearly understand the biggest triangle that can be inscribed in the semicircle has height r. Also, we know the base has length 2r. So the triangle is an isosceles triangle.
 

So, Area A: = (base * height)/2 = (2r * r)/2 = r^2


Below is the implementation of above approach
 

C++
// C++ Program to find the biggest triangle
// which can be inscribed within the semicircle
#include <bits/stdc++.h>
using namespace std;

// Function to find the area
// of the triangle
float trianglearea(float r)
{

    // the radius cannot be negative
    if (r < 0)
        return -1;

    // area of the triangle
     return r * r;
}

// Driver code
int main()
{
    float r = 5;
    cout << trianglearea(r) << endl;
    return 0;
}
Java
 // Java  Program to find the biggest triangle 
// which can be inscribed within the semicircle 
import java.io.*;

class GFG {
   

// Function to find the area 
// of the triangle 
static float trianglearea(float r) 
{ 

    // the radius cannot be negative 
    if (r < 0) 
        return -1; 

    // area of the triangle 
    return r * r; 
} 

// Driver code 


    public static void main (String[] args) {
        float r = 5; 
    System.out.println( trianglearea(r)); 
    }
}
// This code is contributed  
// by chandan_jnu.
Python 3
# Python 3 Program  to find the biggest triangle 
# which can be inscribed within the semicircle

# Function to find the area 
# of the triangle 
def trianglearea(r) :

    # the radius cannot be negative 
    if r < 0 :
        return -1

    #  area of the triangle 
    return r * r


# Driver Code
if __name__ == "__main__" :

    r = 5
    print(trianglearea(r))

# This code is contributed by ANKITRAI1
C#
// C# Program to find the biggest 
// triangle which can be inscribed 
// within the semicircle 
using System; 

class GFG 
{
    
// Function to find the area 
// of the triangle 
static float trianglearea(float r) 
{ 

    // the radius cannot be negative 
    if (r < 0) 
        return -1; 

    // area of the triangle 
    return r * r; 
} 

// Driver code 
public static void Main () 
{
    float r = 5; 
    Console.Write(trianglearea(r)); 
}
}

// This code is contributed 
// by ChitraNayal
PHP
<?php
// PHP Program to find the biggest 
// triangle which can be inscribed 
// within the semicircle

// Function to find the area
// of the triangle
function trianglearea($r)
{

    // the radius cannot be negative
    if ($r < 0)
        return -1;

    // area of the triangle
    return $r * $r;
}

// Driver code
$r = 5;
echo trianglearea($r);

// This code is contributed 
// by inder_verma
?>
JavaScript
 <script>
 
// javascript  Program to find the biggest triangle 
// which can be inscribed within the semicircle 

// Function to find the area 
// of the triangle 
function trianglearea(r) 
{ 

    // the radius cannot be negative 
    if (r < 0) 
        return -1; 

    // area of the triangle 
    return r * r; 
} 

// Driver code 

var r = 5; 
document.write( trianglearea(r)); 

// This code contributed by Princi Singh 

</script>

Output: 
25

 

Time complexity: O(1) as it is performing constant operations

Auxiliary Space: O(1)


Article Tags :

Explore