Open In App

Area of the Largest Triangle inscribed in a Hexagon

Improve
Improve
Like Article
Like
Save
Share
Report

Given here is a regular hexagon, of side length a, the task is to find the area of the biggest triangle that can be inscribed within it.
Examples: 
 

Input:  a = 6
Output: area = 46.7654

Input: a = 8
Output: area = 83.1384

 

 

Approach:
 

It is very clear that the biggest triangle that can be inscribed within the hexagon is an equilateral triangle. 
In triangle ACD
following Pythagoras theorem, 
(a/2)^2 + (b/2)^2 = a^2 
b^2/4 = 3a^2/4 
So, b = a?3 
Therefore, area of the triangle, A = ?3(a?3)^2/4= 3?3a^2/4

Below is the implementation of the above approach:
 

C++




// C++ Program to find the biggest triangle
// which can be inscribed within the hexagon
#include <bits/stdc++.h>
using namespace std;
 
// Function to find the area
// of the triangle
float trianglearea(float a)
{
 
    // side cannot be negative
    if (a < 0)
        return -1;
 
    // area of the triangle
    float area = (3 * sqrt(3) * pow(a, 2)) / 4;
 
    return area;
}
 
// Driver code
int main()
{
    float a = 6;
    cout << trianglearea(a) << endl;
 
    return 0;
}


Java




// Java Program to find the biggest triangle
// which can be inscribed within the hexagon
 
import java.io.*;
 
class GFG {
     
// Function to find the area
// of the triangle
static double trianglearea(double a)
{
 
    // side cannot be negative
    if (a < 0)
        return -1;
 
    // area of the triangle
    double area = (3 * Math.sqrt(3) * Math.pow(a, 2)) / 4;
 
    return area;
}
 
    public static void main (String[] args) {
        double a = 6;
        System.out.println (trianglearea(a));
 
    }
//This Code is contributed by Sachin..
     
}


Python3




# Python3 Program to find the biggest triangle
# which can be inscribed within the hexagon
import math
 
# Function to find the area
# of the triangle
def trianglearea(a):
 
    # side cannot be negative
    if (a < 0):
        return -1;
 
    # area of the triangle
    area = (3 * math.sqrt(3) * math.pow(a, 2)) / 4;
 
    return area;
 
# Driver code
a = 6;
print(trianglearea(a))
 
# This code is contributed
# by Akanksha Rai


C#




// C# Program to find the biggest triangle
// which can be inscribed within the hexagon
 
using System;
 
class GFG {
     
// Function to find the area
// of the triangle
static double trianglearea(double a)
{
 
    // side cannot be negative
    if (a < 0)
        return -1;
 
    // area of the triangle
    double area = (3 * Math.Sqrt(3) * Math.Pow(a, 2)) / 4;
 
    return Math.Round(area,4);
}
 
    public static void Main () {
        double a = 6;
        Console.WriteLine(trianglearea(a));
 
    }
        // This code is contributed by Ryuga
 
}


PHP




<?php
// PHP Program to find the biggest triangle
// which can be inscribed within the hexagon
 
// Function to find the area
// of the triangle
function trianglearea($a)
{
 
    // side cannot be negative
    if ($a < 0)
        return -1;
 
    // area of the triangle
    $area = (3 * sqrt(3) *
                 pow($a, 2)) / 4;
 
    return $area;
}
 
// Driver code
$a = 6;
echo trianglearea($a);
 
// This code is contributed
// by inder_verma
?>


Javascript




<script>
// javascript Program to find the biggest triangle
// which can be inscribed within the hexagon
 
   
// Function to find the area
// of the triangle
function trianglearea(a)
{
 
    // side cannot be negative
    if (a < 0)
        return -1;
 
    // area of the triangle
    var area = (3 * Math.sqrt(3) * Math.pow(a, 2)) / 4;
 
    return area.toFixed(4);
}
 
var a = 6;
document.write(trianglearea(a));
 
// This code contributed by Princi Singh
 
</script>


Output: 

46.7654

 

Time complexity: O(1)

Auxiliary Space: O(1)



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