海伦公式(Heron's formula)是一种用于计算三角形面积的公式,它只需要知道三角形的三条边长。公式如下:
\[ S = \sqrt{p(p-a)(p-b)(p-c)} \]
其中:
\( S \) 表示三角形的面积
\( a \)、\( b \)、\( c \) 分别表示三角形的三条边长
\( p \) 表示三角形的半周长,计算公式为 \( p = \frac{a + b + c}{2} \)
这个公式适用于所有类型的三角形,无论是锐角三角形、直角三角形还是钝角三角形。
计算步骤
计算半周长:
首先计算三角形的三条边长之和的一半,即半周长 \( p \)。
代入公式:
将半周长 \( p \) 和三条边长 \( a \)、\( b \)、\( c \) 代入海伦公式中。
开平方:
计算表达式的平方根,得到三角形的面积 \( S \)。
示例
假设三角形的三条边长分别为 \( a = 3 \)、\( b = 4 \)、\( c = 5 \):
1. 计算半周长 \( p \):
\[ p = \frac{3 + 4 + 5}{2} = 6 \]
2. 代入公式计算面积 \( S \):
\[ S = \sqrt{6(6-3)(6-4)(6-5)} = \sqrt{6 \times 3 \times 2 \times 1} = \sqrt{36} = 6 \]
因此,这个三角形的面积是 6 平方单位。
代码实现
```python
import math
输入三角形的三条边长
a = float(input("输入三角形第一边长: "))
b = float(input("输入三角形第二边长: "))
c = float(input("输入三角形第三边长: "))
检查是否构成三角形
if a + b > c and a + c > b and b + c > a:
计算半周长
p = (a + b + c) / 2
计算面积
area = math.sqrt(p * (p - a) * (p - b) * (p - c))
输出结果,保留两位小数
print("三角形面积为 {:.2f}".format(area))
else:
print("输入的边构不成三角形,请重新输入!")
```
这个代码首先检查输入的三条边是否能构成一个三角形,然后计算半周长和面积,并输出结果。