import math
PI = math.pi
class YuanTai:
def __init__(self, r1, r2, h):
self.radius1 = r1
self.radius2 = r2
self.height = h
def get_volume(self):
return PI * self.height * (self.radius1 ** 2 + self.radius2 ** 2 + self.radius1 * self.radius2) / 3
def get_surface_area(self):
l = ((self.radius1 - self.radius2) ** 2 + self.height ** 2) ** 0.5
return PI * (self.radius1 ** 2 + self.radius2 ** 2 + self.radius1 * l + self.radius2 * l)
if __name__ == '__main__':
print('***计算圆台的体积和表面积***')
r1 = float(input('请输入下底半径:'))
r2 = float(input('请输入上底半径:'))
h = float(input('请输入高度:'))
yt = YuanTai(r1, r2, h)
print(f'当r1 = {yt.radius1}, r2 = {yt.radius2}, h = {yt.height}时:')
print(f'体积V = {yt.get_volume():.2f}')
print(f'表面积S = {yt.get_surface_area():.2f}')
|