Program to find Nth Hexagonal Number (original) (raw)

Last Updated : 16 Oct, 2024

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.

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

// C++ program for above approach #include<bits/stdc++.h> using namespace std;

// Finding the nth Hexagonal Number int hexagonalNum(int n){ return n*(2*n - 1); }

// Driver program to test above function int main(){ int n = 10; cout << "10th Hexagonal Number is "<< hexagonalNum(n) << endl; return 0; }

// The code is contributed by Gautam goel (gautamgoel962)

C

// C program for above approach #include <stdio.h> #include <stdlib.h>

// Finding the nth Hexagonal Number int hexagonalNum(int n) { return n*(2*n - 1); }

// Driver program to test above function int main() { int n = 10; printf("10th Hexagonal Number is = %d", hexagonalNum(n));

return 0;

}

Java

// Java program for above approach 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)); } }

Python

Python program for finding Hexagonal numbers

def hexagonalNum( n ): return n*(2*n - 1)

Driver code

n = 10 print ("10th Hexagonal Number is = ", hexagonalNum(n))

C#

// C# program for above approach 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));
}

}

// This code is contributed by vt_m.

JavaScript

PHP

nāˆ—(2āˆ—n * (2 * nāˆ—(2āˆ—n - 1); } // Driver program to test above function $n = 10; echo("10th Hexagonal Number is " . hexagonalNum($n)); // This code is contributed by Ajit. ?>

`

**Output:

10th Hexagonal Number is = 190

**Time complexity: O(1) since performing constant operations

**Auxiliary space: O(1) since it is using constant variables