利用断言编写程序。输入三角形的三边长,判断三边是否能构成三角形。若不能,抛出异常,显示异常信息“不能构成三角形”;否则,计算并输出三角形的面积(保留两位小数)
时间: 2024-05-06 10:16:23 浏览: 73
以下是利用断言编写的程序:
```python
import math
try:
a = float(input("请输入三角形第一条边长:"))
b = float(input("请输入三角形第二条边长:"))
c = float(input("请输入三角形第三条边长:"))
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))
print("三角形面积为:{:.2f}".format(area))
except AssertionError as e:
print(e)
except Exception as e:
print(e)
```
运行程序后,用户输入三角形的三边长,程序首先使用 `assert` 断言语句判断这三条边是否能构成三角形。如果不能构成三角形,则抛出异常并显示异常信息“不能构成三角形”;否则,计算并输出三角形的面积。如果程序运行过程中发生其他异常,则也会被捕获并输出异常信息。
相关问题
利用断言编写程序,输入三角形三边长,判断三边能否构成三角形,若不能,抛出异常,显示异常信息“不能构成三角形”,否则计算出三角形面积
以下是使用 Python 语言编写的程序:
```python
import math
# 判断是否能构成三角形
def is_triangle(a, b, c):
assert a + b > c and a + c > b and b + c > a, "不能构成三角形"
# 计算三角形面积
def triangle_area(a, b, c):
s = (a + b + c) / 2
return math.sqrt(s * (s - a) * (s - b) * (s - c))
# 主程序
try:
a = float(input("请输入三角形第一条边的长度:"))
b = float(input("请输入三角形第二条边的长度:"))
c = float(input("请输入三角形第三条边的长度:"))
is_triangle(a, b, c)
area = triangle_area(a, b, c)
print("三角形的面积为:", area)
except AssertionError as e:
print("错误信息:", e)
```
程序运行时,先输入三角形的三条边长,然后调用 `is_triangle` 函数判断是否能构成三角形,如果不能,就抛出异常并显示错误信息;如果可以,则调用 `triangle_area` 函数计算三角形的面积,并输出结果。程序使用了断言(assert)来检查输入的三边是否能构成三角形,如果不能,则会抛出 AssertionError 异常。
利用断言编写程序。输入三角形的三边长,判断三边是否能构成三角形,若不能抛出异常,显示异常信息“不能构成三角形”,否则,计算并输出三角形的面积并保留两位小数
以下是利用断言编写的程序:
```python
import math
a = float(input("请输入三角形的第一条边长:"))
b = float(input("请输入三角形的第二条边长:"))
c = float(input("请输入三角形的第三条边长:"))
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))
print("三角形的面积为:%.2f" % area)
```
程序中使用了 `assert` 断言,判断三边是否能构成三角形。如果不满足条件,就会抛出异常并显示异常信息“不能构成三角形”;如果满足条件,则计算并输出三角形的面积,保留两位小数。
阅读全文