# Find length of Diagonal of Hexagon

• Last Updated : 18 Mar, 2021

Given a regular hexagon of side length a, the task is to find the length of it’s diagonal.
Examples

```Input : a = 4
Output : 8

Input : a = 7
Output : 14```

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 experts, please refer DSA Live Classes for Working Professionals and Competitive Programming Live for Students. From the diagram, it is clear that the triangle ABC is an equilateral triangle, so
AB = AC = BC = a.
also it is obvious, diagonal = 2*AC or 2*BC
So the length of diagonal of the hexagon = 2*a
Below is the implementation of the above approach:

## C++

 `// C++ Program to find the diagonal``// of the hexagon``#include ``using` `namespace` `std;` `// Function to find the diagonal``// of the hexagon``float` `hexadiagonal(``float` `a)``{``    ``// side cannot be negative``    ``if` `(a < 0)``        ``return` `-1;` `    ``// diagonal of the hexagon``    ``return` `2 * a;``}` `// Driver code``int` `main()``{``    ``float` `a = 4;` `    ``cout << hexadiagonal(a) << endl;` `    ``return` `0;``}`

## Java

 `// Java Program to find the diagonal``// of the hexagon` `import` `java.io.*;` `class` `GFG {` `// Function to find the diagonal``// of the hexagon``static` `float` `hexadiagonal(``float` `a)``{``    ``// side cannot be negative``    ``if` `(a < ``0``)``        ``return` `-``1``;` `    ``// diagonal of the hexagon``    ``return` `2` `* a;``}` `// Driver code`  `    ``public` `static` `void` `main (String[] args) {``            ``float` `a = ``4``;` `    ``System.out.print( hexadiagonal(a));``}``}` `// This code is contributed``// by shs`

## Python3

 `# Python3 Program to find the diagonal``# of the hexagon` `# Function to find the diagonal``# of the hexagon``def` `hexadiagonal(a):` `    ``# side cannot be negative``    ``if` `(a < ``0``):``        ``return` `-``1` `    ``# diagonal of the hexagon``    ``return` `2` `*` `a`  `# Driver code``if` `__name__``=``=``'__main__'``:``    ``a ``=` `4``    ``print``(hexadiagonal(a))` `# This code is contributed by``# Shivi_Aggarwal`

## C#

 `// C# Program to find the diagonal``// of the hexagon``using` `System;` `class` `GFG {` `    ``// Function to find the diagonal``    ``// of the hexagon``    ``static` `float` `hexadiagonal(``float` `a)``    ``{``        ``// side cannot be negative``        ``if` `(a < 0)``            ``return` `-1;``        ` `        ``// diagonal of the hexagon``        ``return` `2 * a;``    ``}` `// Driver code``public` `static` `void` `Main()``{``   ``float` `a = 4;``   ``Console.WriteLine( hexadiagonal(a));``}``}` `// This code is contributed``// by anuj_67..`

## PHP

 ``

## Javascript

 ``
Output:
`8`

My Personal Notes arrow_drop_up