利用断言编写程序。输入三角形的三边长,判断三边是否能构成三角形。若不能,抛出异常,显示异常信息“不能构成三角形”;否则,计算并输出三角形的面积(保留两位小数)
时间: 2024-05-07 08:23:04 浏览: 95
C语言实验-从键盘输入三角形三个边的长度,计算该三角形的面积。若输入的三条边不能构成三角形。则直接输出信息“不能构成三角形!”
5星 · 资源好评率100%
以下是利用断言编写的程序:
```python
import math
def triangle_area(a, b, c):
assert a+b>c and a+c>b and b+c>a, "不能构成三角形"
s = (a + b + c) / 2
area = math.sqrt(s * (s - a) * (s - b) * (s - c))
return round(area, 2)
a = float(input("请输入三角形的第一条边长:"))
b = float(input("请输入三角形的第二条边长:"))
c = float(input("请输入三角形的第三条边长:"))
try:
area = triangle_area(a, b, c)
print("三角形的面积为:", area)
except AssertionError as e:
print(e)
```
程序首先定义了一个求三角形面积的函数 `triangle_area()`,并使用断言判断输入的三边是否能构成三角形。如果不能构成三角形,则抛出异常并显示异常信息;否则,计算并返回三角形的面积(保留两位小数)。
在主程序中,先输入三角形的三条边长,然后调用 `triangle_area()` 函数计算三角形面积。如果输入的三边不能构成三角形,则程序会捕获到 AssertionError 异常并输出异常信息。如果能构成三角形,则输出计算出的三角形面积。
阅读全文