编写程序,输入三角形的三条边长,先判断是否可以构成三角形,如果可以,则输出三角形的周长和面积(计算的周长和面积保留一位小数);否则,输出“输入的三边无法构成三角形”。
时间: 2024-05-15 09:16:12 浏览: 91
C语言实验-从键盘输入三角形三个边的长度,计算该三角形的面积。若输入的三条边不能构成三角形。则直接输出信息“不能构成三角形!”
5星 · 资源好评率100%
```
a, b, c = map(float, input("请输入三角形的三条边长,以空格分隔:").split())
if a + b > c and a + c > b and b + c > a:
# 可以构成三角形
perimeter = round(a + b + c, 1)
p = perimeter / 2 # 半周长
area = round((p * (p - a) * (p - b) * (p - c)) ** 0.5, 1)
print("周长为:", perimeter)
print("面积为:", area)
else:
print("输入的三边无法构成三角形")
```
说明:
1. 输入三条边长,使用 `map` 函数将输入的字符串转换成浮点数,再用 `split` 函数将输入的三个数分离开来,分别赋值给变量 `a`、`b`、`c`。
2. 用三角形的判定条件 `a + b > c and a + c > b and b + c > a` 判断是否可以构成三角形。
3. 如果可以构成三角形,计算周长和面积。周长就是三条边长之和,用 `round` 函数保留一位小数。面积使用海伦公式计算,其中 `p` 为半周长,即 `(a + b + c) / 2`,用 `**` 表示幂次方。
4. 如果无法构成三角形,输出提示信息。
阅读全文