Given an integer n, the task is to find the nth hexagonal number . The nth hexagonal number Hn is the number of distinct dots in a pattern of dots consisting of the outlines of regular hexagons with sides up to n dots when the hexagons are overlaid so that they share one vertex.{Source : wiki}
Input: n = 2
Output: 6
Input: n = 5
Output: 45
Input: n = 7
Output: 91
In general, a polygonal number (triangular number, square number, etc) is a number represented as dots or pebbles arranged in the shape of a regular polygon. The first few pentagonal numbers are 1, 5, 12, etc.
If s is the number of sides in a polygon, the formula for the nth s-gonal number P (s, n) is
nth s-gonal number P(s, n) = (s - 2)n(n-1)/2 + n
If we put s = 6, we get
n'th Hexagonal number Hn = 2(n*n)-n
= n(2n - 1)
C++
#include<bits/stdc++.h>
using namespace std;
int hexagonalNum( int n){
return n*(2*n - 1);
}
int main(){
int n = 10;
cout << "10th Hexagonal Number is " << hexagonalNum(n) << endl;
return 0;
}
|
C
#include <stdio.h>
#include <stdlib.h>
int hexagonalNum( int n)
{
return n*(2*n - 1);
}
int main()
{
int n = 10;
printf ( "10th Hexagonal Number is = %d" ,
hexagonalNum(n));
return 0;
}
|
Java
class Hexagonal
{
int hexagonalNum( int n)
{
return n*( 2 *n - 1 );
}
}
public class GeeksCode
{
public static void main(String[] args)
{
Hexagonal obj = new Hexagonal();
int n = 10 ;
System.out.printf( "10th Hexagonal number is = "
+ obj.hexagonalNum(n));
}
}
|
Python3
def hexagonalNum( n ):
return n * ( 2 * n - 1 )
n = 10
print ( "10th Hexagonal Number is = " , hexagonalNum(n))
|
C#
using System;
class GFG {
static int hexagonalNum( int n)
{
return n * (2 * n - 1);
}
public static void Main()
{
int n = 10;
Console.WriteLine( "10th Hexagonal"
+ " number is = " + hexagonalNum(n));
}
}
|
PHP
<?php
function hexagonalNum( $n )
{
return $n * (2 * $n - 1);
}
$n = 10;
echo ( "10th Hexagonal Number is " .
hexagonalNum( $n ));
?>
|
Javascript
<script>
function hexagonalNum(n)
{
return n * (2 * n - 1);
}
var n = 10;
document.write( "10th Hexagonal number is = " +
hexagonalNum(n));
</script>
|
Output:
10th Hexagonal Number is = 190
Time complexity: O(1) since performing constant operations
Auxiliary space: O(1) since it is using constant variables
Reference:https://en.wikipedia.org/wiki/Hexagonal_number
This article is contributed by Nishant_Singh(pintu). If you like GeeksforGeeks and would like to contribute, you can also write an article using write.geeksforgeeks.org or mail your article to review-team@geeksforgeeks.org. See your article appearing on the GeeksforGeek’s main page and help other Geeks.
Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.