Open In App

# Largest cube that can be inscribed within a right circular cylinder

Given here is a right circular cylinder of height h and radius r. The task is to find the volume of biggest cube that can be inscribed within it.
Examples

```Input: h = 3, r = 2
Output: volume = 27

Input: h = 5, r = 4
Output: volume = 125
```

Approach: From the figure, it can be clearly understand that side of the cube = height of the cylinder
So, the volume = (height)^3
Below is the implementation of the above approach:

## C++

 `// C++ Program to find the biggest cube``// inscribed within a right circular cylinder``#include ``using` `namespace` `std;` `// Function to find the volume of the cube``float` `cube(``float` `h, ``float` `r)``{` `    ``// height and radius cannot be negative``    ``if` `(h < 0 && r < 0)``        ``return` `-1;` `    ``// volume of the cube``    ``float` `a = ``pow``(h, 3);` `    ``return` `a;``}` `// Driver code``int` `main()``{``    ``float` `h = 5, r = 4;``    ``cout << cube(h, r) << endl;` `    ``return` `0;``}`

## Java

 `// Java Program to find the biggest cube``// inscribed within a right circular cylinder``class` `Solution``{``    `  `// Function to find the volume of the cube``static` `float` `cube(``float` `h, ``float` `r)``{` `    ``// height and radius cannot be negative``    ``if` `(h < ``0` `&& r < ``0``)``        ``return` `-``1``;` `    ``// volume of the cube``    ``float` `a = (``float``)Math.pow(h, ``3``);` `    ``return` `a;``}` `// Driver code``public` `static` `void` `main(String args[])``{``    ``float` `h = ``5``, r = ``4``;``    ``System.out.println( cube(h, r) );``}``}``//contributed by Arnab Kundu`

## Python 3

 `# Python 3 Program to find the biggest cube``# inscribed within a right circular cylinder``import` `math` `# Function to find the volume of the cube``def` `cube(h, r):` `    ``# height and radius cannot be negative``    ``if` `(h < ``0` `and` `r < ``0``):``        ``return` `-``1` `    ``# volume of the cube``    ``a ``=` `math.``pow``(h, ``3``)` `    ``return` `a` `# Driver code``h ``=` `5``; r ``=` `4``;``print``(cube(h, r));` `# This code is contributed``# by Akanksha Rai`

## C#

 `// C# Program to find the biggest``// cube inscribed within a right``// circular cylinder``using` `System;``                    ` `class` `GFG``{` `// Function to find the volume``// of the cube``static` `float` `cube(``float` `h, ``float` `r)``{` `    ``// height and radius cannot``    ``// be negative``    ``if` `(h < 0 && r < 0)``        ``return` `-1;` `    ``// volume of the cube``    ``float` `a = (``float``)Math.Pow(h, 3);` `    ``return` `a;``}` `// Driver code``public` `static` `void` `Main()``{``    ``float` `h = 5, r = 4;``    ``Console.Write( cube(h, r) );``}``}` `// This code is contributed``// by 29AjayKumar`

## PHP

 ``

## Javascript

 ``

Output:

`125`

Time Complexity: O(1)
Auxiliary Space: O(1), As we are not using any extra space.