python圆(Circle)类:私有属性radius,有一个参数的构造方法、setRadius方法、getRadius方法、cir方法(周长)、area方法(面积),print方法(输出圆的半径)。 球体(Ball):构造方法、barea方法(计算表面积)、vol方法(计算体积) 圆柱体(Cylinder):私有属性heigh
时间: 2023-12-21 07:05:36 浏览: 123
t和一个Ball对象,构造方法、setHeight方法、getHeight方法、carea方法(计算侧面积)、cvol方法(计算体积),print方法(输出圆柱的高度和底面半径)。
好的,我理解了你的问题,下面是代码实现:
```python
import math
class Circle:
def __init__(self, radius):
self.__radius = radius
def setRadius(self, radius):
self.__radius = radius
def getRadius(self):
return self.__radius
def cir(self):
return 2 * math.pi * self.__radius
def area(self):
return math.pi * self.__radius ** 2
def print(self):
print("圆的半径为:", self.__radius)
class Ball:
def __init__(self, circle):
self.__circle = circle
def barea(self):
return 4 * math.pi * self.__circle.getRadius() ** 2
def vol(self):
return 4 / 3 * math.pi * self.__circle.getRadius() ** 3
class Cylinder:
def __init__(self, height, ball):
self.__height = height
self.__ball = ball
def setHeight(self, height):
self.__height = height
def getHeight(self):
return self.__height
def carea(self):
return 2 * math.pi * self.__ball.getRadius() * self.__height
def cvol(self):
return math.pi * self.__ball.getRadius() ** 2 * self.__height
def print(self):
print("圆柱的高度为:", self.__height)
print("圆柱的底面半径为:", self.__ball.getRadius())
# 测试代码
c = Circle(5)
c.print()
print("圆的周长为:", c.cir())
print("圆的面积为:", c.area())
b = Ball(c)
print("球的表面积为:", b.barea())
print("球的体积为:", b.vol())
cy = Cylinder(10, b)
cy.print()
print("圆柱的侧面积为:", cy.carea())
print("圆柱的体积为:", cy.cvol())
```
希望我的回答对你有所帮助!
阅读全文