# Program to check if N is a Centered dodecagonal number

Given an integer **N**, the task is to check if **N** is a Centered Dodecagonal Number or not. If the number **N** is a Centered Dodecagonal Number then print **“Yes”** else print **“No”**.

Centered Dodecagonal Numberrepresents a dot in the center and other dots surrounding it in successive Dodecagonal Number(12 sided polygon) layers. The first few Centered Dodecagonal Numbers are1, 13, 37, 73 …

**Examples:**

Input:N = 13Output:YesExplanation:

Second Centered dodecagonal number is 13.

Input:N = 30Output:No

**Approach:**

1 The **K ^{th}** term of the Centered Dodecagonal Number is given as:

2. As we have to check that the given number can be expressed as a Centered Dodecagonal Number or not. This can be checked as:

=>

=>

3. If the value of **K** calculated using the above formula is an integer, then **N** is a Centered Dodecagonal Number.

4. Else the number **N** is not a Centered Dodecagonal 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 number N` `// is a Centered dodecagonal number` `bool` `isCentereddodecagonal(` `int` `N)` `{` ` ` `float` `n` ` ` `= (6 + ` `sqrt` `(24 * N + 12))` ` ` `/ 12;` ` ` `// Condition to check if N` ` ` `// is a Centered Dodecagonal Number` ` ` `return` `(n - (` `int` `)n) == 0;` `}` `// Driver Code` `int` `main()` `{` ` ` `// Given Number` ` ` `int` `N = 13;` ` ` `// Function call` ` ` `if` `(isCentereddodecagonal(N)) {` ` ` `cout << ` `"Yes"` `;` ` ` `}` ` ` `else` `{` ` ` `cout << ` `"No"` `;` ` ` `}` ` ` `return` `0;` `}` |

## Java

`// Java program for the above approach` `import` `java.util.*;` `class` `GFG{` `// Function to check if number N` `// is a centered dodecagonal number` `static` `boolean` `isCentereddodecagonal(` `int` `N)` `{` ` ` `float` `n = (` `float` `) ((` `6` `+ Math.sqrt(` `24` `* N +` ` ` `12` `)) / ` `12` `);` ` ` `// Condition to check if N is a` ` ` `// centered dodecagonal number` ` ` `return` `(n - (` `int` `)n) == ` `0` `;` `}` `// Driver Code` `public` `static` `void` `main(String[] args)` `{` ` ` ` ` `// Given Number` ` ` `int` `N = ` `13` `;` ` ` `// Function call` ` ` `if` `(isCentereddodecagonal(N))` ` ` `{` ` ` `System.out.print(` `"Yes"` `);` ` ` `}` ` ` `else` ` ` `{` ` ` `System.out.print(` `"No"` `);` ` ` `}` `}` `}` `// This code is contributed by sapnasingh4991` |

## Python3

`# Python3 program for the above approach` `import` `numpy as np` `# Function to check if the number N` `# is a centered dodecagonal number` `def` `isCentereddodecagonal(N):` ` ` `n ` `=` `(` `6` `+` `np.sqrt(` `24` `*` `N ` `+` `12` `)) ` `/` `12` ` ` `# Condition to check if N` ` ` `# is a centered dodecagonal number` ` ` `return` `(n ` `-` `int` `(n)) ` `=` `=` `0` `# Driver Code` `N ` `=` `13` `# Function call` `if` `(isCentereddodecagonal(N)):` ` ` `print` `(` `"Yes"` `)` `else` `:` ` ` `print` `(` `"No"` `)` `# This code is contributed by PratikBasu` |

## C#

`// C# program for the above approach` `using` `System;` `class` `GFG{` `// Function to check if number N` `// is a centered dodecagonal number` `static` `bool` `isCentereddodecagonal(` `int` `N)` `{` ` ` `float` `n = (` `float` `) ((6 + Math.Sqrt(24 * N +` ` ` `12)) / 12);` ` ` `// Condition to check if N is a` ` ` `// centered dodecagonal number` ` ` `return` `(n - (` `int` `)n) == 0;` `}` `// Driver Code` `public` `static` `void` `Main(` `string` `[] args)` `{` ` ` ` ` `// Given Number` ` ` `int` `N = 13;` ` ` `// Function call` ` ` `if` `(isCentereddodecagonal(N))` ` ` `{` ` ` `Console.Write(` `"Yes"` `);` ` ` `}` ` ` `else` ` ` `{` ` ` `Console.Write(` `"No"` `);` ` ` `}` `}` `}` `// This code is contributed by rutvik_56` |

## Javascript

`<script>` `// Javascript program for the above approach` `// Function to check if number N` `// is a Centered dodecagonal number` `function` `isCentereddodecagonal(N)` `{` ` ` `let n` ` ` `= (6 + Math.sqrt(24 * N + 12))` ` ` `/ 12;` ` ` `// Condition to check if N` ` ` `// is a Centered Dodecagonal Number` ` ` `return` `(n - parseInt(n)) == 0;` `}` `// Driver Code` `// Given Number` `let N = 13;` `// Function call` `if` `(isCentereddodecagonal(N)) {` ` ` `document.write(` `"Yes"` `);` `}` `else` `{` ` ` `document.write(` `"No"` `);` `}` `// This code is contributed by subham348.` `</script>` |

**Output:**

Yes

**Time Complexity: **O(1)

**Auxiliary Space: **O(1)