# n’th Pentagonal Number

Given an integer n, find the nth Pentagonal number. First three pentagonal numbers are 1, 5 and 12 (Please see below diagram).
The n’th pentagonal number Pn is the number of distinct dots in a pattern of dots consisting of the outlines of regular pentagons with sides up to n dots, when the pentagons are overlaid so that they share one vertex [Source Wiki]

Examples :

```Input: n = 1
Output: 1

Input: n = 2
Output: 5

Input: n = 3
Output: 12
```

## Recommended: Please try your approach on {IDE} first, before moving on to the solution.

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 = 5, we get

n'th Pentagonal number Pn = 3*n*(n-1)/2 + n```

Examples:

Pentagonal Number Below are the implementations of above idea in different programming languages.

## C/C++

 `// C program for above approach ` `#include ` `#include ` ` `  `// Finding the nth Pentagonal Number ` `int` `pentagonalNum(``int` `n) ` `{ ` `    ``return` `(3*n*n - n)/2; ` `} ` ` `  `// Driver program to test above function ` `int` `main() ` `{ ` `    ``int` `n = 10; ` `    ``printf``(````"10th Pentagonal Number is = %d "````,  ` `                             ``pentagonalNum(n)); ` ` `  `    ``return` `0; ` `} `

## Java

 `// Java program for above approach ` `class` `Pentagonal ` `{ ` `    ``int` `pentagonalNum(``int` `n) ` `    ``{ ` `        ``return` `(``3``*n*n - n)/``2``; ` `    ``} ` `} ` ` `  `public` `class` `GeeksCode ` `{ ` `    ``public` `static` `void` `main(String[] args) ` `    ``{ ` `        ``Pentagonal obj = ``new` `Pentagonal(); ` `        ``int` `n = ``10``;     ` `        ``System.out.printf(``"10th petagonal number is = "` `                          ``+ obj.pentagonalNum(n)); ` `    ``} ` `} `

## Python

 `# Python program for finding pentagonal numbers ` `def` `pentagonalNum( n ): ` `    ``return` `(``3``*``n``*``n ``-` `n)``/``2` `#Script Begins ` ` `  `n ``=` `10` `print` `"10th Pentagonal Number is = "``, pentagonalNum(n) ` `  `  `#Scripts Ends `

## C#

 `// C# program for above approach ` `using` `System; ` ` `  `class` `GFG { ` `     `  `    ``static` `int` `pentagonalNum(``int` `n) ` `    ``{ ` `        ``return` `(3 * n * n - n) / 2; ` `    ``} ` ` `  `    ``public` `static` `void` `Main() ` `    ``{ ` `        ``int` `n = 10;  ` `         `  `        ``Console.WriteLine(``"10th petagonal"` `        ``+ ``" number is = "` `+ pentagonalNum(n)); ` `    ``} ` `} ` ` `  `// This code is contributed by vt_m. `

## PHP

 ` `

Output :

```10th Pentagonal Number is = 145
```