编写程序,从键盘上输入三角形三条边,判断能否构成直角三角形,如果能构成直角三角形,则计算其面积和周长,如果不能构成,则抛出异常
时间: 2023-12-29 13:22:10 浏览: 95
好的,以下是 Python 代码实现:
```python
try:
a = float(input("请输入三角形第一条边长:"))
b = float(input("请输入三角形第二条边长:"))
c = float(input("请输入三角形第三条边长:"))
# 判断是否能构成三角形
if a + b <= c or a + c <= b or b + c <= a:
raise ValueError("无法构成三角形!")
# 判断是否为直角三角形
if a ** 2 + b ** 2 == c ** 2 or a ** 2 + c ** 2 == b ** 2 or b ** 2 + c ** 2 == a ** 2:
print("可以构成直角三角形")
perimeter = a + b + c
s = 0.5 * a * b
print("周长为:", perimeter)
print("面积为:", s)
else:
print("不能构成直角三角形")
except ValueError as e:
print("输入错误:", e)
```
程序中使用了异常处理机制,如果输入的三条边无法构成三角形,则抛出 ValueError 异常,并打印出错误信息。如果能够构成三角形,则判断是否为直角三角形,如果是,则计算其面积和周长并输出,否则输出不能构成直角三角形的信息。
阅读全文