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++ Program to find the biggest cube
// inscribed within a right circular cylinder
#include <bits/stdc++.h>
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 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 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# 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
// PHP Program to find the biggest 
// cube inscribed within a right
// circular cylinder
 
// Function to find the volume
// of the cube
function cube($h, $r)
{
 
    // height and radius cannot
    // be negative
    if ($h < 0 && $r < 0)
        return -1;
 
    // volume of the cube
    $a = pow($h, 3);
 
    return $a;
}
 
// Driver code
$h = 5;
$r = 4;
echo cube($h, $r);
 
// This code is contributed by @Tushil.
?>




<script>
 
// javascript Program to find the biggest cube
// inscribed within a right circular cylinder
 
// Function to find the volume of the cube
function cube(h , r)
{
 
    // height and radius cannot be negative
    if (h < 0 && r < 0)
        return -1;
 
    // volume of the cube
    var a = Math.pow(h, 3);
 
    return a;
}
 
// Driver code
  
var h = 5, r = 4;
document.write( cube(h, r) );
 
// This code is contributed by 29AjayKumar
 
</script>

Output: 

125

 

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


Article Tags :