# Program to check if N is a Icosihexagonal Number

• Last Updated : 23 Jun, 2021

Given an integer N, the task is to check if it is a Icosihexagonal number or not.

Icosihexagonal number is class of figurate number. It has 26 â€“ sided polygon called Icosihexagon. The N-th Icosihexagonal number countâ€™s the 26 number of dots and all other dots are surrounding with a common sharing corner and make a pattern. The first few Icosihexagonol numbers are 1, 26, 75, 148 …

Examples:

Input: N = 26
Output: Yes
Explanation:
Second icosihexagonal number is 26.
Input: 30
Output: No

Approach:

1. The Kth term of the icosihexagonal number is given as

2. As we have to check that the given number can be expressed as a icosihexagonal number or not. This can be checked as follows –

=>
=>

1.
2. Finally, check the value of computed using this formulae is an integer, which means that N is a icosihexagonal number.

Below is the implementation of the above approach:

## C++

 // C++ program to check whether// a number is a icosihexagonal number// or not #include  using namespace std; // Function to check whether the// number is a icosihexagonal numberbool isicosihexagonal(int N){    float n        = (22 + sqrt(192 * N + 484))          / 48;     // Condition to check if the    // number is a icosihexagonal number    return (n - (int)n) == 0;} // Driver codeint main(){    int i = 26;     if (isicosihexagonal(i)) {        cout << "Yes";    }    else {        cout << "No";    }    return 0;}

## Java

 // Java program to check whether the// number is a icosihexagonal number// or notclass GFG{ // Function to check whether the// number is a icosihexagonal numberstatic boolean isicosihexagonal(int N){    float n = (float) ((22 + Math.sqrt(192 * N +                                       484)) / 48);         // Condition to check if the number    // is a icosihexagonal number    return (n - (int)n) == 0;} // Driver Codepublic static void main(String[] args){         // Given number    int N = 26;         // Function call    if (isicosihexagonal(N))    {        System.out.print("Yes");    }    else    {        System.out.print("No");    }}} // This code is contributed by shubham

## Python3

 # Python3 program to check whether# a number is a icosihexagonal number# or notimport numpy as np # Function to check whether the# number is a icosihexagonal numberdef isicosihexagonal(N):     n = (22 + np.sqrt(192 * N + 484)) / 48     # Condition to check if the    # number is a icosihexagonal number    return (n - (int(n))) == 0 # Driver codei = 26 if (isicosihexagonal(i)):    print ("Yes")else:    print ("No") # This code is contributed by PratikBasu

## C#

 // C# program to check whether the// number is a icosihexagonal number// or notusing System;class GFG{ // Function to check whether the// number is a icosihexagonal numberstatic bool isicosihexagonal(int N){    float n = (float)((22 + Math.Sqrt(192 * N +                                      484)) / 48);         // Condition to check if the number    // is a icosihexagonal number    return (n - (int)n) == 0;} // Driver Codepublic static void Main(){         // Given number    int N = 26;         // Function call    if (isicosihexagonal(N))    {        Console.Write("Yes");    }    else    {        Console.Write("No");    }}} // This code is contributed by Code_Mech

## Javascript

 

Output:

Yes

Time Complexity: O(sqrt(n))

Auxiliary Space: O(1)

My Personal Notes arrow_drop_up