shape类是一个表示形状的抽象类,area()为求图形面积的函数,volume()为求体积函数。请从shape类派生三角形类(triangle)和矩形类(rectangle),并给出具体的求面积函数
时间: 2023-06-05 07:47:03 浏览: 566
shape类是一个抽象类,用于表示形状,其中area()函数用于求图形面积,volume()函数用于求体积。现在需要从shape类派生出三角形类(triangle)和矩形类(rectangle),并给出具体的求面积函数。
三角形类(triangle)的求面积函数可以使用海伦公式,即s=(a+b+c)/2,其中a、b、c为三角形的三条边长,s为半周长,面积S=sqrt(s(s-a)(s-b)(s-c))。
矩形类(rectangle)的求面积函数可以直接使用长和宽相乘的方法,即S=l*w,其中l为矩形的长度,w为矩形的宽度。
具体代码如下:
class shape:
def area(self):
pass
def volume(self):
pass
class triangle(shape):
def __init__(self, a, b, c):
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
def volume(self):
return 0
class rectangle(shape):
def __init__(self, l, w):
self.l = l
self.w = w
def area(self):
return self.l * self.w
def volume(self):
return 0
阅读全文