mirror of
https://github.com/TheAlgorithms/Python.git
synced 2024-11-30 16:31:08 +00:00
Added 2 shaped in volume.py (#5560)
This commit is contained in:
parent
729aaf6427
commit
7390777f9a
|
@ -153,6 +153,21 @@ def vol_sphere(radius: float) -> float:
|
||||||
return 4 / 3 * pi * pow(radius, 3)
|
return 4 / 3 * pi * pow(radius, 3)
|
||||||
|
|
||||||
|
|
||||||
|
def vol_hemisphere(radius: float):
|
||||||
|
"""Calculate the volume of a hemisphere
|
||||||
|
Wikipedia reference: https://en.wikipedia.org/wiki/Hemisphere
|
||||||
|
Other references: https://www.cuemath.com/geometry/hemisphere
|
||||||
|
:return 2/3 * pi * radius^3
|
||||||
|
|
||||||
|
>>> vol_hemisphere(1)
|
||||||
|
2.0943951023931953
|
||||||
|
|
||||||
|
>>> vol_hemisphere(7)
|
||||||
|
718.3775201208659
|
||||||
|
"""
|
||||||
|
return 2 / 3 * pi * pow(radius, 3)
|
||||||
|
|
||||||
|
|
||||||
def vol_circular_cylinder(radius: float, height: float) -> float:
|
def vol_circular_cylinder(radius: float, height: float) -> float:
|
||||||
"""Calculate the Volume of a Circular Cylinder.
|
"""Calculate the Volume of a Circular Cylinder.
|
||||||
Wikipedia reference: https://en.wikipedia.org/wiki/Cylinder
|
Wikipedia reference: https://en.wikipedia.org/wiki/Cylinder
|
||||||
|
@ -166,6 +181,26 @@ def vol_circular_cylinder(radius: float, height: float) -> float:
|
||||||
return pi * pow(radius, 2) * height
|
return pi * pow(radius, 2) * height
|
||||||
|
|
||||||
|
|
||||||
|
def vol_conical_frustum(height: float, radius_1: float, radius_2: float):
|
||||||
|
"""Calculate the Volume of a Conical Frustum.
|
||||||
|
Wikipedia reference: https://en.wikipedia.org/wiki/Frustum
|
||||||
|
:return 1/3 * pi * height * (radius_1^2 + radius_top^2 + radius_1 * radius_2)
|
||||||
|
|
||||||
|
>>> vol_conical_frustum(45, 7, 28)
|
||||||
|
48490.482608158454
|
||||||
|
|
||||||
|
>>> vol_conical_frustum(1, 1, 2)
|
||||||
|
7.330382858376184
|
||||||
|
"""
|
||||||
|
return (
|
||||||
|
1
|
||||||
|
/ 3
|
||||||
|
* pi
|
||||||
|
* height
|
||||||
|
* (pow(radius_1, 2) + pow(radius_2, 2) + radius_1 * radius_2)
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
"""Print the Results of Various Volume Calculations."""
|
"""Print the Results of Various Volume Calculations."""
|
||||||
print("Volumes:")
|
print("Volumes:")
|
||||||
|
@ -176,7 +211,9 @@ def main():
|
||||||
print("Prism: " + str(vol_prism(2, 2))) # = 4
|
print("Prism: " + str(vol_prism(2, 2))) # = 4
|
||||||
print("Pyramid: " + str(vol_pyramid(2, 2))) # ~= 1.33
|
print("Pyramid: " + str(vol_pyramid(2, 2))) # ~= 1.33
|
||||||
print("Sphere: " + str(vol_sphere(2))) # ~= 33.5
|
print("Sphere: " + str(vol_sphere(2))) # ~= 33.5
|
||||||
|
print("Hemisphere: " + str(vol_hemisphere(2))) # ~= 16.75
|
||||||
print("Circular Cylinder: " + str(vol_circular_cylinder(2, 2))) # ~= 25.1
|
print("Circular Cylinder: " + str(vol_circular_cylinder(2, 2))) # ~= 25.1
|
||||||
|
print("Conical Frustum: " + str(vol_conical_frustum(2, 2, 4))) # ~= 58.6
|
||||||
print("Spherical cap: " + str(vol_spherical_cap(1, 2))) # ~= 5.24
|
print("Spherical cap: " + str(vol_spherical_cap(1, 2))) # ~= 5.24
|
||||||
print("Spheres intersetion: " + str(vol_spheres_intersect(2, 2, 1))) # ~= 21.21
|
print("Spheres intersetion: " + str(vol_spheres_intersect(2, 2, 1))) # ~= 21.21
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user