Open In App

Largest hexagon that can be inscribed within an equilateral triangle

Given an equilateral triangle of side length a, the task is to find the largest hexagon that can be inscribed within it.
Examples: 
 

Input: a = 6 
Output: 2
Input: a = 9 
Output:
 

 

 

Approach: From the figure, it is clear that the three small triangles are also equilateral. So they will have side length b = a / 3 where b is also the length of the hexagon and a is the length of the given equilateral triangle.
Below is the implementation of the above approach: 
 




// C++ program to find the side of the
// largest hexagon which can be inscribed
// within an equilateral triangle
#include <bits/stdc++.h>
using namespace std;
 
// Function to find the side
// of the hexagon
float hexagonside(float a)
{
 
    // Side cannot be negative
    if (a < 0)
        return -1;
 
    // Side of the hexagon
    float x = a / 3;
    return x;
}
 
// Driver code
int main()
{
    float a = 6;
    cout << hexagonside(a) << endl;
    return 0;
}




// Java program to find the side of the
// largest hexagon which can be inscribed
// within an equilateral triangle
class CLG
{
// Function to find the side
// of the hexagon
 static float hexagonside(float a)
{
 
    // Side cannot be negative
    if (a < 0)
        return -1;
 
    // Side of the hexagon
    float x = a / 3;
    return x;
}
 
// Driver code
public static void main(String[] args)
{
    float a = 6;
    System.out.println(hexagonside(a));
     
}
}




# Python3 program to find the side of the
# largest hexagon which can be inscribed
# within an eqilateral triangle
 
# function to find the side of the hexagon
def hexagonside(a):
     
    # Side cannot be negative
    if a < 0:
        return -1
         
    # Side of the hexagon
    x = a // 3
    return x
 
# Driver code
a = 6
print(hexagonside(a))
 
# This code is contributed
# by Mohit kumar 29




using System;
// C# program to find the side of the
// largest hexagon which can be inscribed
// within an equilateral triangle
class CLG
{
// Function to find the side
// of the hexagon
 static float hexagonside(float a)
{
  
    // Side cannot be negative
    if (a < 0)
        return -1;
  
    // Side of the hexagon
    float x = a / 3;
    return x;
}
  
// Driver code
public static void Main()
{
    float a = 6;
    Console.Write(hexagonside(a));
      
}
}




<?php
// PHP program to find the side of the
// largest hexagon which can be inscribed
// within an equilateral triangle
 
// Function to find the side
// of the hexagon
function hexagonside($a)
{
 
    // Side cannot be negative
    if ($a < 0)
        return -1;
 
    // Side of the hexagon
    $x = $a / 3;
    return $x;
}
 
// Driver code
$a = 6;
echo hexagonside($a) ;
     
// This code is contributed by Ryuga
?>




<script>
 
// javascript program to find the side of the
// largest hexagon which can be inscribed
// within an equilateral triangle
 
// Function to find the side
// of the hexagon
 function hexagonside(a)
{
 
    // Side cannot be negative
    if (a < 0)
        return -1;
 
    // Side of the hexagon
    var x = a / 3;
    return x;
}
 
// Driver code
 
var a = 6;
document.write(hexagonside(a));
 
 
// This code contributed by Princi Singh
 
</script>

Output: 
2

 

Time Complexity: O(1)

Auxiliary Space: O(1)


Article Tags :