Python输入三角形的三条边,可以捕获其中的异常并计算出三角形面积
时间: 2024-05-16 15:15:15 浏览: 171
可以使用try-except语句来捕获异常,并使用海伦公式计算三角形面积。
海伦公式:设三角形三边分别为a、b、c,p为半周长,则三角形面积S=sqrt(p(p-a)(p-b)(p-c)),其中sqrt表示求平方根,p=(a+b+c)/2。
以下是实现该功能的Python代码:
```python
import math
try:
a = float(input("请输入三角形的第一条边长:"))
b = float(input("请输入三角形的第二条边长:"))
c = float(input("请输入三角形的第三条边长:"))
if a + b <= c or a + c <= b or b + c <= a:
raise ValueError("三条边长无法构成三角形!")
p = (a + b + c) / 2
S = math.sqrt(p * (p - a) * (p - b) * (p - c))
print("三角形面积为:", S)
except ValueError as e:
print("输入有误:", e)
except Exception as e:
print("程序出错:", e)
```
在上述代码中,使用try-except语句块来捕获输入的异常和程序运行时的异常。首先,输入三条边长,并判断这三条边长能否构成三角形。如果不能构成,就抛出一个自定义的ValueError异常;如果可以构成,则按照海伦公式计算三角形的面积,并输出结果。如果输入的边长不是数字类型,或者程序运行过程中出现错误,就会捕获到Exception异常,并输出错误信息。
阅读全文