Area of the Largest Triangle inscribed in a Hexagon

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 trianglefloat 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 codeint main(){ float a = 6; cout << trianglearea(a) << endl; return 0;} |
Java
// Java Program to find the biggest triangle// which can be inscribed within the hexagonimport java.io.*;class GFG { // Function to find the area// of the trianglestatic 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 hexagonimport math# Function to find the area# of the triangledef 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 codea = 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 hexagonusing 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 trianglefunction 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 trianglefunction 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)
Feeling lost in the world of random DSA topics, wasting time without progress? It’s time for a change! Join our DSA course, where we’ll guide you on an exciting journey to master DSA efficiently and on schedule.
Ready to dive in? Explore our Free Demo Content and join our DSA course, trusted by over 100,000 zambiatek!
Ready to dive in? Explore our Free Demo Content and join our DSA course, trusted by over 100,000 zambiatek!




