第3关:计算三角形面积 学习内容 参考答案 记录 评 任务描述.编程要求·测试说明 任务描述 已知三角形三条边的边长分别为a、b、c,h=(a+b+c)/2,则可计算三角形面积,保留2位小数。 本关任务: 编程要求 根据提示,在右侧编辑器补充代码。 测试说明 平台会对你编写的代码进行测试: 测试输入: 请输入三角形的边长a:8请输入三角形的边长b:6请输入三角形的边长c:5 预期输出:面积为14.98
时间: 2025-04-06 17:05:53 浏览: 87
下面是基于海伦公式的Python代码实现,用于计算三角形的面积,并将结果保留两位小数:
```python
# 计算三角形面积(使用海伦公式)
def calculate_triangle_area():
# 输入三条边长
a = float(input("请输入三角形的边长a: "))
b = float(input("请输入三角形的边长b: "))
c = float(input("请输入三角形的边长c: "))
# 判断是否能构成三角形
if (a + b > c) and (a + c > b) and (b + c > a):
# 使用海伦公式计算面积
h = (a + b + c) / 2 # 半周长
area = (h * (h - a) * (h - b) * (h - c)) ** 0.5 # 面积
print(f"面积为{area:.2f}")
else:
print("无法构成三角形")
calculate_triangle_area()
```
### 给出解释
1. **输入处理**:首先从用户获取三边长度 `a`, `b` 和 `c` 的值,并将其转换成浮点类型以便后续运算。
2. **判断能否构成三角形**:根据三角形的基本性质,任意两边之和必须大于第三边。如果条件不满足,则直接打印“无法构成三角形”并结束程序。
3. **应用海伦公式**:
海伦公式表示为 \( \text{Area} = \sqrt{s(s-a)(s-b)(s-c)} \),其中半周长 \( s = \frac{(a+b+c)}{2} \)。
4. **格式化输出**:为了符合题目要求,我们用 Python 格式化的字符串表达式 `{:.2f}` 来确保输出的小数值精确到两位小数。
---
#### 示例运行过程:
假设输入数据如下:
```
请输入三角形的边长a: 8
请输入三角形的边长b: 6
请输入三角形的边长c: 5
```
执行后得出的结果将是:
```
面积为14.98
```
如果尝试非法输入例如 `a=1, b=1, c=10` ,则会显示:
```
无法构成三角形
```
---
阅读全文
相关推荐


















