Open In App

Area of the circumcircle of any triangles with sides given

Improve
Improve
Like Article
Like
Save
Share
Report

Given a triangle with known sides a, b and c; the task is to find the area of its circumcircle.
Examples: 

Input: a = 2, b = 2, c = 3
Output: 7.17714

Input: a = 4, b = 5, c = 3
Output: 19.625


 


Approach: 
For a triangle with side lengths a, b, and c,
 

Radius of the circumcircle: 
R = \frac{abc}{\sqrt{\left ( \left ( a+b+c \right )\left ( a+b-c \right )\left ( a+c-b \right )\left ( b+c-a \right ) \right )}}[Tex]= \frac{abc}{4\sqrt{\left ( s\left ( a+b-s \right )\left ( a+c-s \right )\left ( b+c-s \right ) \right )}}[/Tex]= \frac{abc}{4A}where A = √(s*(s-a)*(s-b)*(s-c))and s = (a+b+c)/2 is the semiperimeter.Therefore, Area of the circumcircle:Area = \pi R^{2}


Below is the implementation of the above approach: 

C++

// C++ Program to find the area
// the circumcircle of the given triangle
 
#include <bits/stdc++.h>
using namespace std;
 
// Function to find the area
// of the circumcircle
float circlearea(float a, float b, float c)
{
 
    // the sides cannot be negative
    if (a < 0 || b < 0 || c < 0)
        return -1;
 
    // semi-perimeter of the circle
    float p = (a + b + c) / 2;
 
    // area of triangle
    float At = sqrt(p * (p - a) * (p - b) * (p - c));
 
    // area of the circle
    float A = 3.14 * pow(((a * b * c) / (4 * At)), 2);
    return A;
}
 
// Driver code
int main()
{
 
    // Get the sides of the triangle
    float a = 4, b = 5, c = 3;
 
    // Find and print the area of the circumcircle
    cout << circlearea(a, b, c) << endl;
 
    return 0;
}

                    

Java

// Java Program to find the area
// the circumcircle of the given triangle
import java.*;
class gfg
{
// Function to find the area
// of the circumcircle
public double circlearea(double a, double b, double c)
{
 
    // the sides cannot be negative
    if (a < 0 || b < 0 || c < 0)
        return -1;
 
    // semi-perimeter of the circle
    double p = (a + b + c) / 2;
 
    // area of triangle
    double At = Math.sqrt(p * (p - a) * (p - b) * (p - c));
 
    // area of the circle
    double A = 3.14 * Math.pow(((a * b * c) / (4 * At)), 2);
    return A;
}
}
 
class geek
{
// Driver code
public static void main(String[] args)
{
    gfg g = new gfg();
    // Get the sides of the triangle
    double a = 4, b = 5, c = 3;
 
    // Find and print the area of the circumcircle
    System.out.println(g.circlearea(a, b, c));
 
}
}
 
//This code is contributed by shk..

                    

Python3

# Python3 Program to find the area
# the circumcircle of the given triangle
import math
 
# Function to find the area
# of the circumcircle
def circlearea(a, b, c):
 
    # the sides cannot be negative
    if (a < 0 or b < 0 or c < 0):
        return -1;
 
    # semi-perimeter of the circle
    p = (a + b + c) / 2;
 
    # area of triangle
    At = math.sqrt(p * (p - a) *
                  (p - b) * (p - c));
 
    # area of the circle
    A = 3.14 * pow(((a * b * c) / (4 * At)), 2);
    return A;
 
# Driver code
 
# Get the sides of the triangle
a = 4;
b = 5;
c = 3;
 
# Find and print the area
# of the circumcircle
print (float(circlearea(a, b, c)));
 
# This code is contributed
# by Shivi_Aggarwal

                    

C#

// C# Program to find the area
// the circumcircle of the given triangle
using System;
class gfg
{
 // Function to find the area
 // of the circumcircle
 public double circlearea(double a, double b, double c)
 {
 
    // the sides cannot be negative
    if (a < 0 || b < 0 || c < 0)
        return -1;
 
    // semi-perimeter of the circle
    double p = (a + b + c) / 2;
 
    // area of triangle
    double At = Math.Sqrt(p * (p - a) * (p - b) * (p - c));
 
    // area of the circle
    double A = 3.14 * Math.Pow(((a * b * c) / (4 * At)), 2);
    return A;
 }
}
 
class geek
{
 // Driver code
 public static int Main()
 {
    gfg g = new gfg();
    // Get the sides of the triangle
    double a = 4, b = 5, c = 3;
 
    // Find and print the area of the circumcircle
    Console.WriteLine(g.circlearea(a, b, c));
 
    return 0;
 }
}
//This code os contributed by SoumikMondal

                    

PHP

<?php
// PHP Program to find the
// area the circumcircle of
// the given triangle
 
// Function to find the area
// of the circumcircle
function circlearea($a, $b, $c)
{
 
    // the sides cannot be negative
    if ($a < 0 || $b < 0 || $c < 0)
        return -1;
 
    // semi-perimeter of the circle
    $p = ($a + $b + $c) / 2;
 
    // area of triangle
    $At = sqrt($p * ($p - $a) *
              ($p - $b) * ($p - $c));
 
    // area of the circle
    $A = 3.14 * pow((($a * $b *
                      $c) / (4 * $At)), 2);
    return $A;
}
 
// Driver code
 
// Get the sides of the triangle
$a = 4; $b = 5; $c = 3;
 
// Find and print the area
// of the circumcircle
echo circlearea($a, $b, $c);
 
// This code is contributed
// by inder_verma
?>

                    

Javascript

<script>
// javascript Program to find the area
// the circumcircle of the given triangle
 
// Function to find the area
// of the circumcircle
function circlearea(a , b , c)
{
 
    // the sides cannot be negative
    if (a < 0 || b < 0 || c < 0)
        return -1;
 
    // semi-perimeter of the circle
    var p = (a + b + c) / 2;
 
    // area of triangle
    var At = Math.sqrt(p * (p - a) * (p - b) * (p - c));
 
    // area of the circle
    var A = 3.14 * Math.pow(((a * b * c) / (4 * At)), 2);
    return A;
}
 
// Driver code
 
// Get the sides of the triangle
var a = 4, b = 5, c = 3;
 
// Find and print the area of the circumcircle
document.write(circlearea(a, b, c));
 
// This code contributed by Princi Singh
 
</script>

                    

Output
19.625

Time Complexity: O(log(n)) as it is using inbuilt sqrt function
Auxiliary Space: O(1)



Last Updated : 27 Aug, 2022
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads