# Largest cone that can be inscribed within a cube

Given here is a cube of side length **a**. We have to find the height and the radius of the biggest right circular cone that can be inscribed within it.**Examples**:

Input: a = 6Output: r = 4.24264, h = 6Input: a = 10Output: r = 7.07107, h = 10

Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the **DSA Self Paced Course** at a student-friendly price and become industry ready. To complete your preparation from learning a language to DS Algo and many more, please refer **Complete Interview Preparation Course****.**

In case you wish to attend **live classes **with experts, please refer **DSA Live Classes for Working Professionals **and **Competitive Programming Live for Students**.

**Approach**:

Let height of the cone = **h**.

and, radius of the cone = **r**.

From the diagram, we can clearly understand that,

**r = a/√2****h = a**

Below is the implementation of the above approach:

## C++

`// C++ Program to find the biggest cone` `// inscribed within a cube` `#include <bits/stdc++.h>` `using` `namespace` `std;` `// Function to find the radius of the cone` `float` `coneRadius(` `float` `a)` `{` ` ` `// side cannot be negative` ` ` `if` `(a < 0)` ` ` `return` `-1;` ` ` `// radius of the cone` ` ` `float` `r = a / ` `sqrt` `(2);` ` ` `return` `r;` `}` `// Function to find the height of the cone` `float` `coneHeight(` `float` `a)` `{` ` ` `// side cannot be negative` ` ` `if` `(a < 0)` ` ` `return` `-1;` ` ` `// height of the cone` ` ` `float` `h = a;` ` ` `return` `h;` `}` `// Driver code` `int` `main()` `{` ` ` `float` `a = 6;` ` ` `cout << "r = " << coneRadius(a) << ", "` ` ` `<< "h = " << coneHeight(a) << endl;` ` ` `return` `0;` `}` |

## Java

`// Java Program to find the biggest` `// cone inscribed within a cube` `import` `java.util.*;` `import` `java.lang.*;` `class` `GFG` `{` `// Function to find the radius` `// of the cone` `static` `float` `coneRadius(` `float` `a)` `{` ` ` `// side cannot be negative` ` ` `if` `(a < ` `0` `)` ` ` `return` `-` `1` `;` ` ` `// radius of the cone` ` ` `float` `r = (` `float` `)(a / Math.sqrt(` `2` `));` ` ` `return` `r;` `}` `// Function to find the height` `// of the cone` `static` `float` `coneHeight(` `float` `a)` `{` ` ` `// side cannot be negative` ` ` `if` `(a < ` `0` `)` ` ` `return` `-` `1` `;` ` ` `// height of the cone` ` ` `float` `h = a;` ` ` `return` `h;` `}` `// Driver code` `public` `static` `void` `main(String args[])` `{` ` ` `float` `a = ` `6` `;` ` ` `System.out.println(` `"r = "` `+ coneRadius(a) +` ` ` `", "` `+ ` `"h = "` `+ coneHeight(a));` `}` `}` `// This code is contributed` `// by Akanksha Rai` |

## Python 3

`# Python 3 Program to find the biggest` `# cone inscribed within a cube` `import` `math` `# Function to find the radius` `# of the cone` `def` `coneRadius(a):` ` ` `# side cannot be negative` ` ` `if` `(a < ` `0` `):` ` ` `return` `-` `1` ` ` `# radius of the cone` ` ` `r ` `=` `a ` `/` `math.sqrt(` `2` `)` ` ` `return` `r` `# Function to find the height of the cone` `def` `coneHeight(a):` ` ` `# side cannot be negative` ` ` `if` `(a < ` `0` `):` ` ` `return` `-` `1` ` ` `# height of the cone` ` ` `h ` `=` `a` ` ` `return` `h` `# Driver code` `if` `__name__ ` `=` `=` `"__main__"` `:` ` ` ` ` `a ` `=` `6` ` ` `print` `(` `"r = "` `, coneRadius(a) ,` ` ` `"h = "` `, coneHeight(a))` `# This code is contributed by ChitraNayal` |

## C#

`// C# Program to find the biggest` `// cone inscribed within a cube` `using` `System;` `class` `GFG` `{` `// Function to find the radius` `// of the cone` `static` `float` `coneRadius(` `float` `a)` `{` ` ` `// side cannot be negative` ` ` `if` `(a < 0)` ` ` `return` `-1;` ` ` `// radius of the cone` ` ` `float` `r = (` `float` `)(a / Math.Sqrt(2));` ` ` `return` `r;` `}` `// Function to find the height` `// of the cone` `static` `float` `coneHeight(` `float` `a)` `{` ` ` `// side cannot be negative` ` ` `if` `(a < 0)` ` ` `return` `-1;` ` ` `// height of the cone` ` ` `float` `h = a;` ` ` `return` `h;` `}` `// Driver code` `public` `static` `void` `Main()` `{` ` ` `float` `a = 6;` ` ` `Console.WriteLine(` `"r = "` `+ coneRadius(a) +` ` ` `", "` `+ ` `"h = "` `+ coneHeight(a));` `}` `}` `// This code is contributed` `// by Akanksha Rai` |

## PHP

`<?php` `// PHP Program to find the biggest` `// cone inscribed within a cube` `// Function to find the radius` `// of the cone` `function` `coneRadius(` `$a` `)` `{` ` ` `// side cannot be negative` ` ` `if` `(` `$a` `< 0)` ` ` `return` `-1;` ` ` `// radius of the cone` ` ` `$r` `= ` `$a` `/ sqrt(2);` ` ` `return` `$r` `;` `}` `// Function to find the height` `// of the cone` `function` `coneHeight(` `$a` `)` `{` ` ` `// side cannot be negative` ` ` `if` `(` `$a` `< 0)` ` ` `return` `-1;` ` ` `// height of the cone` ` ` `$h` `= ` `$a` `;` ` ` `return` `$h` `;` `}` `// Driver code` `$a` `= 6;` `echo` `(` `"r = "` `);` `echo` `coneRadius(` `$a` `);` `echo` `(` `", "` `);` `echo` `(` `"h = "` `);` `echo` `(coneHeight(` `$a` `));` `// This code is contributed` `// by Shivi_Aggarwal` `?>` |

## Javascript

`<script>` `// javascript Program to find the biggest` `// cone inscribed within a cube` `// Function to find the radius` `// of the cone` `function` `coneRadius(a)` `{` ` ` `// side cannot be negative` ` ` `if` `(a < 0)` ` ` `return` `-1;` ` ` `// radius of the cone` ` ` `var` `r = (a / Math.sqrt(2));` ` ` `return` `r;` `}` `// Function to find the height` `// of the cone` `function` `coneHeight(a)` `{` ` ` `// side cannot be negative` ` ` `if` `(a < 0)` ` ` `return` `-1;` ` ` `// height of the cone` ` ` `var` `h = a;` ` ` `return` `h;` `}` `// Driver code` `var` `a = 6;` `document.write(` `"r = "` `+ coneRadius(a).toFixed(5) +` ` ` `", "` `+ ` `"h = "` `+ coneHeight(a));` `// This code is contributed by 29AjayKumar` `</script>` |

**Output:**

r = 4.24264, h = 6