编写程序 按用户输入的三角形三条边判断能否构成直角三角形 若能构成则计算三角形的面积和周长 否则引发异常
时间: 2023-12-29 19:51:00 浏览: 129
以下是Python的实现代码:
```python
import math
try:
# 获取用户输入的三角形三条边
a = float(input("请输入三角形第一条边的长度:"))
b = float(input("请输入三角形第二条边的长度:"))
c = float(input("请输入三角形第三条边的长度:"))
# 判断是否能构成直角三角形
if a**2 + b**2 == c**2 or a**2 + c**2 == b**2 or b**2 + c**2 == a**2:
# 计算面积
p = (a + b + c) / 2
s = math.sqrt(p * (p - a) * (p - b) * (p - c))
# 计算周长
l = a + b + c
print("可以构成直角三角形,面积为:{:.2f},周长为:{:.2f}".format(s, l))
else:
raise Exception("无法构成直角三角形!")
except Exception as e:
print("发生错误:", e)
```
程序执行流程如下:
1. 用户输入三角形三条边的长度。
2. 判断三条边能否构成直角三角形,如果能,则计算面积和周长并输出;如果不能,则引发异常并输出错误信息。
3. 如果用户输入的不是数字,则会引发ValueError异常;如果用户输入的三条边无法组成三角形,则会引发Exception异常。程序会捕获并处理这些异常,并输出相应的错误信息。
例如,如果用户输入三角形三条边分别为3、4、5,则程序会输出:
```
可以构成直角三角形,面积为:6.00,周长为:12.00
```
如果用户输入三角形三条边分别为1、2、3,则程序会输出:
```
发生错误: 无法构成直角三角形!
```
阅读全文