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 = 6Output:2Input:a = 9Output:3

**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++

`// 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

`// 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

`# 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` |

## C#

`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` `// 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` `?>` |

## Javascript

`<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

Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the **DSA Self Paced Course** at a student-friendly price and become industry ready. To complete your preparation from learning a language to DS Algo and many more, please refer **Complete Interview Preparation Course****.**

In case you wish to attend live classes with industry experts, please refer **Geeks Classes Live**