设计一个几何图形类,有name属性和计算面积的方法。再设计三个类:三角形类、正方形类和圆形类
时间: 2024-02-23 08:03:07 浏览: 97
设计一个抽象类图形类,在该类中包含有至少两个抽象方法求周长和求面积,分别定义圆形类、长方形类、正方形类、三角形类来继承图形类,并实现上述两个方法
5星 · 资源好评率100%
好的,我可以为你设计这些类。以下是代码示例:
```python
# 定义几何图形类
class Geometry:
def __init__(self, name):
self.name = name
def area(self):
pass
# 定义三角形类
class Triangle(Geometry):
def __init__(self, name, a, b, c):
super().__init__(name)
self.a = a
self.b = b
self.c = c
def area(self):
# 使用海伦公式计算三角形面积
s = (self.a + self.b + self.c) / 2
return (s * (s - self.a) * (s - self.b) * (s - self.c)) ** 0.5
# 定义正方形类
class Square(Geometry):
def __init__(self, name, side):
super().__init__(name)
self.side = side
def area(self):
return self.side ** 2
# 定义圆形类
class Circle(Geometry):
def __init__(self, name, radius):
super().__init__(name)
self.radius = radius
def area(self):
return 3.14 * self.radius ** 2
```
以上是简单的代码示例,你可以创建这些类的实例并调用它们的area方法计算面积。例如:
```python
triangle = Triangle('三角形', 3, 4, 5)
triangle_area = triangle.area()
print(f"{triangle.name}的面积为: {triangle_area}")
square = Square('正方形', 5)
square_area = square.area()
print(f"{square.name}的面积为: {square_area}")
circle = Circle('圆形', 2)
circle_area = circle.area()
print(f"{circle.name}的面积为: {circle_area}")
```
输出结果:
```
三角形的面积为: 6.0
正方形的面积为: 25
圆形的面积为: 12.56
```
阅读全文