Program to check if N is a triacontagonal number

• Last Updated : 24 Jun, 2021

Given a number N, the task is to check if the number is a Triacontagonal number or not.

A Triacontagonal number is a class of figurate number. It has 30 – sided polygon called triacontagon. The N-th triacontagonal number count’s the 30 number of dots and all other dots are surrounding with a common sharing corner and make a pattern. The first few triacontagonol numbers are 1, 30, 87, 172 …

Examples:

Input: N = 30
Output: Yes
Explanation:
Second triacontagonal number is 30.
Input: 32
Output: No

Approach:

1. The Kth term of the triacontagonal number is given as: 1. As we have to check that the given number can be expressed as a triacontagonal 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 triacontagonal number.

Below is the implementation of the above approach:

C++

 // C++ program to check whether a // number is an triacontagonal // number or not #include using namespace std;   // Function to check whether a // number is an triacontagonal // number or not bool istriacontagonal(int N) {     float n         = (26 + sqrt(224 * N + 676))           / 56;       // Condition to check whether a     // number is an triacontagonal     // number or not     return (n - (int)n) == 0; }   // Driver Code int main() {           // Given number     int i = 30;       // Function call     if (istriacontagonal(i)) {         cout << "Yes";     }     else {         cout << "No";     }     return 0; }

Java

 // Java program to check whether a // number is an triacontagonal // number or not class GFG{   // Function to check whether a // number is an triacontagonal // number or not static boolean istriacontagonal(int N) {     float n = (float) ((26 + Math.sqrt(224 * N +                                        676)) / 56);           // Condition to check whether a     // number is an triacontagonal     // number or not     return (n - (int)n) == 0; }   // Driver code public static void main(String[] args) {           // Given number     int N = 30;           // Function call     if (istriacontagonal(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 an triacontagonal # number or not import math;   # Function to check whether a # number is an triacontagonal # number or not def istriacontagonal(N):       n = (26 + math.sqrt(224 * N + 676)) // 56;       # Condition to check whether a     # number is an triacontagonal     # number or not     return (n - int(n)) == 0;   # Driver Code   # Given number i = 30;   # Function call if (istriacontagonal(i)):     print("Yes"); else:     print("No");   # This code is contributed by Code_Mech

C#

 // C# program to check whether a // number is an triacontagonal // number or not using System; class GFG{   // Function to check whether a // number is an triacontagonal // number or not static bool istriacontagonal(int N) {     float n = (float)((26 + Math.Sqrt(224 * N +                                       676)) / 56);           // Condition to check whether a     // number is an triacontagonal     // number or not     return (n - (int)n) == 0; }   // Driver code public static void Main(String[] args) {           // Given number     int N = 30;           // Function call     if (istriacontagonal(N))     {         Console.Write("Yes");     }     else     {         Console.Write("No");     } } }   // This code is contributed by sapnasingh4991

Javascript



Output

Yes

Time Complexity: O(sqrt(n))

Auxiliary Space: O(1)

My Personal Notes arrow_drop_up
Recommended Articles
Page :