# Cake number

Last Updated : 06 Jun, 2022

Consider a 3D cube and n planes. We can make cuts in the cube using given planes. A Cake Number for a given n is the maximum number of regions that can be formed by n planes.
Series after n plane cuts (0 â‰¤ n)
1, 2, 4, 8, 15, 26, 42, 64, 93, 130, 176, 232, 299, 378, 470, 576, 697…

Examples:

```Input : 1
Output : 2
Explanation :
With 1 plane cut the cube is divided into 2 regions

Input : 2
Output : 4
Explanation:
With 2 plane cuts, we can divide the cube into 4 regions

Input : 4
Output : 15

Input : 5
Output : 26```

The formula of nth Term of Cake number:

n-th Cake Number = nC3 + nC2 + nC1 + nC0
= (n3 + 5*n + 6) / 6

Below is the implementation of above approach :

## C++

 `// CPP Program to find the` `// nth Cake number` `#include ` `using` `namespace` `std;`   `// function for Cake number` `int` `number_cake(``int` `n)` `{` `    ``// formula for find  Cake number` `    ``// nth term` `    ``return` `(n * n * n + 5 * n + 6) / 6;` `}`   `// Driver Code` `int` `main()` `{` `    ``// For 2nd cake Number` `    ``int` `n = 2;` `    ``cout << number_cake(n) << endl;`   `    ``// For 8th cake Number` `    ``n = 8;` `    ``cout << number_cake(n) << endl;` `    ``// For 25th cake Number` `    ``n = 25;` `    ``cout << number_cake(n) << endl;`   `    ``return` `0;` `}`

## C

 `// C Program to find the` `// nth Cake number` `#include `   `// function for Cake number` `int` `number_cake(``int` `n)` `{` `    ``// formula for find  Cake number` `    ``// nth term` `    ``return` `(n * n * n + 5 * n + 6) / 6;` `}`   `// Driver Code` `int` `main()` `{` `    ``// For 2nd cake Number` `    ``int` `n = 2;` `    ``printf``(``"%d\n"``,number_cake(n));`   `    ``// For 8th cake Number` `    ``n = 8;` `    ``printf``(``"%d\n"``,number_cake(n));` `    ``// For 25th cake Number` `    ``n = 25;` `    ``printf``(``"%d\n"``,number_cake(n));`   `    ``return` `0;` `}`   `// This code is contributed by kothavvsaakash`

## Java

 `// Java Program to find the nth Cake number` `import` `java.io.*;`   `class` `GFG {` `    `  `    ``// function for Cake number` `    ``static` `int` `number_cake(``int` `n)` `    ``{` `        `  `        ``// formula for find Cake number` `        ``// nth term` `        ``return` `(n * n * n + ``5` `* n + ``6``) / ``6``;` `    ``}` `    `  `    ``// Driver Code` `    ``public` `static` `void` `main (String[] args)` `    ``{` `        ``// For 2nd cake Number` `        ``int` `n = ``2``;` `        ``System.out.println( number_cake(n));` `    `  `        ``// For 8th cake Number` `        ``n = ``8``;` `        ``System.out.println( number_cake(n));` `        `  `        ``// For 25th cake Number` `        ``n = ``25``;` `        ``System.out.println( number_cake(n));` `    ``}` `}`   `// This code is contributed by anuj_67.`

## Python3

 `# Python program to find` `# nth Cake number`   `# Function to calculate` `# Cake number` `def` `number_cake(n):`   `    ``# Formula to calculate nth` `    ``# Cake number` `    `  `    ``return` `(n ``*` `n ``*` `n ``+` `5` `*` `n ``+` `6``) ``/``/` `6`   `# Driver Code` `n ``=` `2` `print``(number_cake(n))`   `n ``=` `8` `print``(number_cake(n))`   `n ``=` `25` `print``(number_cake(n))` `                    `  `# This code is contributed by aj_36                 `

## C#

 `// C# Program to find the nth Cake number` `using` `System;`   `class` `GFG {` `    `  `    ``// function for Cake number` `    ``static` `int` `number_cake(``int` `n)` `    ``{` `        `  `        ``// formula for find Cake number` `        ``// nth term` `        ``return` `(n * n * n + 5 * n + 6) / 6;` `    ``}` `    `  `    ``// Driver Code` `    ``public` `static` `void` `Main ()` `    ``{` `        ``// For 2nd cake Number` `        ``int` `n = 2;` `        ``Console.WriteLine( number_cake(n));` `    `  `        ``// For 8th cake Number` `        ``n = 8;` `        ``Console.WriteLine( number_cake(n));` `        `  `        ``// For 25th cake Number` `        ``n = 25;` `        ``Console.WriteLine( number_cake(n));` `    ``}` `}`   `// This code is contributed by anuj_67.`

## PHP

 ``

## Javascript

 ``

Output :

```4
93
2626```

Time Complexity: O(1)
Auxiliary Space: O(1)