Open In App

Largest triangle that can be inscribed in a semicircle

Last Updated : 31 Aug, 2022
Improve
Improve
Like Article
Like
Save
Share
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)



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads