Skip to content
Related Articles
Get the best out of our app
GeeksforGeeks App
Open App
geeksforgeeks
Browser
Continue

Related Articles

Find length of Diagonal of Hexagon

Improve Article
Save Article
Like Article
Improve Article
Save Article
Like Article

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

 

 

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 <bits/stdc++.h>
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;
}

C




// C Program to find the diagonal
// of the hexagon
#include <stdio.h>
 
// 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;
    printf("%f\n",hexadiagonal(a));
    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




<?php
// PHP Program to find the diagonal
// of the hexagon
 
// Function to find the diagonal
// of the hexagon
function hexadiagonal($a)
{
    // side cannot be negative
    if ($a < 0)
        return -1;
 
    // diagonal of the hexagon
    return 2 * $a;
}
 
// Driver code
    $a = 4;
 
    echo hexadiagonal($a);
    // This code is contributed
// by anuj_67..
 
?>

Javascript




<script>
// javascript Program to find the diagonal
// of the hexagon
 
// Function to find the diagonal
// of the hexagon
function hexadiagonal(a)
{
 
    // side cannot be negative
    if (a < 0)
        return -1;
 
    // diagonal of the hexagon
    return 2 * a;
}
 
// Driver code
 
var a = 4;
document.write( hexadiagonal(a));
 
// This code is contributed by 29AjayKumar
</script>

Output: 

8

 

Time complexity: O(1), since there is no loop or recursion.

Auxiliary Space: O(1), since no extra space has been taken.


My Personal Notes arrow_drop_up
Last Updated : 25 Aug, 2022
Like Article
Save Article
Similar Reads
Related Tutorials