Program to check if N is a Pentadecagonal Number
Given a number N, the task is to check if N is a Pentadecagon Number or not. If the number N is an Pentadecagon Number then print “Yes” else print “No”.
Pentadecagon Number is a 15-sided polygon..The first few Pentadecagon numbers are 1, 15, 42, 82, 135, 201, …
Examples:
Input: N = 15
Output: Yes
Explanation:
Second Pentadecagon number is 15.
Input: N = 30
Output: No
Approach:
- The Kth term of the Pentadecagon number is given as
- As we have to check that the given number can be expressed as a Pentadecagon Number or not. This can be checked as:
=>
=>
- If the value of K calculated using the above formula is an integer, then N is a Pentadecagon Number.
- Else N is not a Pentadecagon Number.
Below is the implementation of the above approach:
C++
// C++ program for the above approach #include <bits/stdc++.h> using namespace std; // Function to check if N is a // Pentadecagon number bool isPentadecagon( int N) { float n = (11 + sqrt (104 * N + 121)) / 26; // Condition to check if the // number is a Pentadecagon number return (n - ( int )n) == 0; } // Driver Code int main() { // Given Number int N = 15; // Function call if (isPentadecagon(N)) { cout << "Yes" ; } else { cout << "No" ; } return 0; } |
Java
// Java program for the above approach import java.io.*; import java.util.*; class GFG { // Function to check if N is // a pentadecagon number public static boolean isPentadecagon( int N) { double n = ( 11 + Math.sqrt( 104 * N + 121 )) / 26 ; // Condition to check if the number // is a pentadecagon number return (n - ( int )n) == 0 ; } // Driver code public static void main(String[] args) { // Given Number int N = 15 ; // Function call if (isPentadecagon(N)) { System.out.println( "Yes" ); } else { System.out.println( "No" ); } } } // This code is contributed by coder001 |
Python3
# Python3 program for the above approach from math import sqrt # Function to check if N is a # pentadecagon number def isPentadecagon(N): n = ( 11 + sqrt( 104 * N + 121 )) / 26 ; # Condition to check if the # number is a pentadecagon number return (n - int (n) = = 0 ); # Driver Code if __name__ = = "__main__" : # Given number N = 15 ; # Function call if (isPentadecagon(N)): print ( "Yes" ); else : print ( "No" ); # This code is contributed by AnkitRai01 |
C#
// C# program for the above approach using System; class GFG { // Function to check if N is // a pentadecagon number public static bool isPentadecagon( int N) { double n = (11 + Math.Sqrt(104 * N + 121)) / 26; // Condition to check if the number // is a pentadecagon number return (n - ( int )n) == 0; } // Driver code public static void Main(String[] args) { // Given Number int N = 15; // Function call if (isPentadecagon(N)) { Console.WriteLine( "Yes" ); } else { Console.WriteLine( "No" ); } } } // This code is contributed by Amit Katiyar |
Javascript
<script> // JavaScript program for the above approach // Function to check if N is a // Pentadecagon number function isPentadecagon(N) { var n = (11 + Math.sqrt(104 * N + 121)) / 26; // Condition to check if the // number is a Pentadecagon number return (n - parseInt(n)) == 0; } // Given Number var N = 15; // Function call if (isPentadecagon(N)) { document.write( "Yes" ); } else { document.write( "No" ); } </script> |
Output:
Yes
Time Complexity: O(logN) since inbuilt sqrt function has been used
Auxiliary Space: O(1)