设计一个 Triangle 类,可以记录三角形的三条边长和面积。成员方法包括:三角形三边设定 setTriangle:功能是设定三条边长;三角形三边输出 showTriangle:功能是显示输出三条边长;三角形形状判定 judgeTriangle:功能是判定并返回三角形是否是等边三角形,等腰三角形,直角三角形,一般三角形,括号中为返回的类型代码;三角形面积计算 getArea:功能是计算并返回三角形面积,面积计算利用 Heron 公式:p=(a+b+c)/2S=sqrt [p(p-a)(p-b)(p-c)]在主函数中初始化任一三角形的三边长,测试该类的功能,在主函数中分别输出三边长度,三角形形状和三角形面积
时间: 2023-05-15 08:05:50 浏览: 119
以下是 Triangle 类的代码:
```
class Triangle:
def __init__(self, a, b, c):
self.a = a
self.b = b
self.c = c
def setTriangle(self, a, b, c):
self.a = a
self.b = b
self.c = c
def showTriangle(self):
print("三角形三边长为:", self.a, self.b, self.c)
def judgeTriangle(self):
if self.a == self.b and self.b == self.c:
return "等边三角形"
elif self.a == self.b or self.b == self.c or self.a == self.c:
if self.a ** 2 + self.b ** 2 == self.c ** 2 or self.a ** 2 + self.c ** 2 == self.b ** 2 or self.b ** 2 + self.c ** 2 == self.a ** 2:
return "等腰直角三角形"
else:
return "等腰三角形"
elif self.a ** 2 + self.b ** 2 == self.c ** 2 or self.a ** 2 + self.c ** 2 == self.b ** 2 or self.b ** 2 + self.c ** 2 == self.a ** 2:
return "直角三角形"
else:
return "一般三角形"
def getArea(self):
p = (self.a + self.b + self.c) / 2
S = (p * (p - self.a) * (p - self.b) * (p - self.c)) ** 0.5
return S
# 测试代码
t = Triangle(3, 4, 5)
t.showTriangle()
print("三角形形状为:", t.judgeTriangle())
print("三角形面积为:", t.getArea())
```
输出结果为:
```
三角形三边长为: 3 4 5
三角形形状为: 直角三角形
三角形面积为: 6.0
```
阅读全文