这里给出的是边长为a的立方体。我们必须找到可以内接的最大右圆锥的高度和半径。
例子:
Input : a = 6
Output : r = 4.24264, h = 6
Input : a = 10
Output : r = 7.07107, h = 10
方法:
令圆锥的高度= h 。
并且,圆锥的半径= r 。
从图中可以清楚地了解到,
- r = a /√2
- h = a
下面是上述方法的实现:
C++
// C++ Program to find the biggest cone
// inscribed within a cube
#include
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
Javascript
输出:
r = 4.24264, h = 6