海伦公式(英语:Heron's formula或Hero's formula),又译希罗公式[1]。由古希腊数学家亚历山大港的海伦发现,并在其于公元60年所著的《Metrica》中载有数学证明,原理是利用三角形的三条边长求取三角形面积。亦有认为更早的阿基米德已经了解这条公式,因为《Metrica》是一部古代数学知识的结集,该公式的发现时间很有可能先于海伦的著作。[2]
假设有一个三角形,边长分别为
,三角形的面积
可由以下公式求得:
,其中
中国南宋末年数学家秦九韶发现或知道等价的公式,其著作《数书九章》卷五第二题即三斜求积。“问沙田一段,有三斜,其小斜一十三里,中斜一十四里,大斜一十五里,里法三百步,欲知为田几何?”答曰:“三百十五顷.”其术文是:“以小斜幂并大斜幂,减中斜幂,余半之,自乘于上;以小斜幂乘大斜幂,减上,余四约之,为实,一为从隅,开平方,得积。”若以大斜记为
,中斜记为
,小斜记为
,秦九韶的方法相当于下面的一般公式:
,其中
像其他中国古代的数学家一样,他的方法没有证明。根据现代数学家吴文俊的研究,秦九韶公式可由出入相补原理得出。
由于任何
边的多边形都可以分割成
个三角形,所以海伦公式可以用作求多边形面积的公式。比如说测量土地的面积的时候,不用测三角形的高,只需测两点间的距离,就可以方便地导出答案。
与海伦在他的著作《Metrica》中的原始证明不同,在此我们用三角公式和公式变形来证明。设三角形的三边
的对角分别为
,则余弦定理为

利用和平方、差平方、平方差等公式,从而有
![{\displaystyle {\begin{aligned}\sin C&={\sqrt {1-\cos ^{2}C}}\\&={\sqrt {(1+\cos C)(1-\cos C)}}\\&={\sqrt {\left(1+{\frac {a^{2}+b^{2}-c^{2}}{2ab}}\right)\left(1-{\frac {a^{2}+b^{2}-c^{2}}{2ab}}\right)}}\\&={\sqrt {\left({\frac {2ab+(a^{2}+b^{2}-c^{2})}{2ab}}\right)\left({\frac {2ab-(a^{2}+b^{2}-c^{2})}{2ab}}\right)}}\\&={\sqrt {\left({\frac {(2ab+a^{2}+b^{2})-c^{2}}{2ab}}\right)\left({\frac {c^{2}-(a^{2}+b^{2}-2ab)}{2ab}}\right)}}\\&={\sqrt {\left[{\frac {(a+b)^{2}-c^{2}}{2ab}}\right]\left[{\frac {c^{2}-(a-b)^{2}}{2ab}}\right]}}\\&={\frac {\sqrt {(a+b+c)(a+b-c)(c+a-b)(c-a+b)}}{2ab}}\\&={\frac {\sqrt {(2s)(2s-2c)(2s-2b)(2s-2a)}}{2ab}}\\&={\frac {2}{ab}}{\sqrt {s(s-c)(s-b)(s-a)}}\end{aligned}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/39eef330386a4859da03a4db850f47c1d809d251)







设
中,
。
为内心,
为三旁切圆。
四点共圆,并设此圆为圆
。
- 过
做铅直线交
于
,再延长
,使之与圆
交于
点。再过
做铅直线交
于
点。
- 先证明
为矩形:
,又
(圆周角相等)。
为矩形。因此,
。
内切圆半径
,
旁切圆半径
。且易知
。由圆幂性质得到:
。故

海伦公式可改写成以幂和表示:
[注 1]
证明
将海伦公式略为变形,知
![{\displaystyle 16A^{2}=[(a+b)+c][(a+b)-c]\times [c+(a-b)][c-(a-b)]}](https://wikimedia.org/api/rest_v1/media/math/render/svg/7253baad63f0b4d87117038d3c2aa440ea007206)
多次使用平方差公式,得
![{\displaystyle {\begin{aligned}16A^{2}&=[(a+b)^{2}-c^{2}]\times [c^{2}-(a-b)^{2}]\\&=[2ab+(a^{2}+b^{2}-c^{2})]\times [2ab-(a^{2}+b^{2}-c^{2})]\\&=(2ab)^{2}-(a^{2}+b^{2}-c^{2})^{2}\\&=4a^{2}b^{2}-(a^{4}+b^{4}+c^{4}+2a^{2}b^{2}-2b^{2}c^{2}-2a^{2}c^{2})\\&=(2a^{2}b^{2}+2b^{2}c^{2}+2a^{2}c^{2})-(a^{4}+b^{4}+c^{4})\\&=2(a^{2}b^{2}+b^{2}c^{2}+a^{2}c^{2})-(a^{4}+b^{4}+c^{4})\\\end{aligned}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/07a06b2e97f507877bd44020043ee18f60e83f3f)
等号两边开根号,再同除以4,得
