定义一个抽象类Shape,在抽象类Shape中定义求面积getArea()和周长getPerimeter()的抽象方法。 分别定义继承抽象类Shape的3个子类即Triangle、Rectang
class Shape:def __init__(self,areas=0,primeters=0):self.areas=areasself.Primeters=primetersdef GetPrimeter(self):passdef GetArea(self):passclass Triangle(Shape):def __init__(self,said1=0,said2=0,said3
·
class Shape:
def __init__(self,areas=0,primeters=0):
self.areas=areas
self.Primeters=primeters
def GetPrimeter(self):
pass
def GetArea(self):
pass
class Triangle(Shape):
def __init__(self,said1=0,said2=0,said3=0,areas=0,primeters=0):
super().__init__(areas,primeters)
self.said1=said1
self.said2=said2
self.said3=said3
def GetPrimeter(self):
self.Primeters=(self.said1+self.said2+self.said3)
def GetArea(self):
s = (self.said1 + self.said2 + self.said3) / 2
self.areas = ((s * (s - self.said1)) * (s - self.said2) * (s - self.said3))**0.5
class Rectangle(Shape):
def __init__(self,length=0,width=0,areas=0,primeters=0):
super().__init__(areas,primeters)
self.length=length
self.width=width
def GetPrimeter(self):
self.Primeters=(self.length+self.width)*2
def GetArea(self):
self.areas=self.length*self.width
class Circle(Shape):
def __init__(self,r=0,areas=0,primeters=0):
super().__init__(areas,primeters)
self.r=r
def GetPrimeter(self):
self.Primeters=2*3.14*self.r
def GetArea(self):
self.areas=3.14*self.r*self.r
a1=Triangle(3,4,5)
a1.GetPrimeter()
a1.GetArea()
print("三角形的周长为:",a1.Primeters)
print("三角形的面积为:",a1.areas)
a2=Rectangle(4,5)
a2.GetPrimeter()
a2.GetArea()
print("矩形的周长为:",a2.Primeters)
print("矩形的面积为:",a2.areas)
a3=Circle(4)
a3.GetPrimeter()
a3.GetArea()
print("圆的周长为:",a3.Primeters)
print("圆的面积为:",a3.areas)
更多推荐
已为社区贡献1条内容
所有评论(0)