数学计算 本地计算 开箱即用 内置示例 不留痕迹

三角形计算器

输入三边长度,得到面积、周长与半周长,再用余弦定理算出三个内角并判断三角形类型(直角 / 锐角 / 钝角),三边不合规会明确提示。

只有三条边的长度,能算出什么?答案比想象的多:面积周长不必说,连三个内角都能反推出来,还能顺手判断它是直角、锐角还是钝角。作业里「已知三边求面积」的题、木工下料验证角度,都可以把数字丢进来,不成三角形时会直接告诉你差在哪。

口径说明:面积用海伦公式 S = √(p(p−a)(p−b)(p−c)),p 为半周长;角度用余弦定理反推(cos A = (b²+c²−a²)/2bc),三内角和恒为 180° 可作验算;等腰与等边会单独标注。

使用步骤

  1. 输入三边长度 a、b、c(单位一致即可)。
  2. 看面积、周长、半周长与三个内角。
  3. 看类型判断:直角 / 锐角 / 钝角(含等腰等边标注)。
  4. 三边不合规(两边之和 ≤ 第三边)会明确报错。

计算原理与示例

海伦公式:只知道三边也能求面积

海伦公式解决「知道三边求面积」的问题:先算半周长 s = (a + b + c) / 2,再取面积 = √(s(s−a)(s−b)(s−c))。以 3-4-5 为例,s = 6,面积 = √(6 × 3 × 2 × 1) = √36 = 6,与「底×高÷2」的结果一致;对 7-8-9 这类不规则三角形,海伦公式几乎是唯一直算办法。

余弦定理求内角

内角用余弦定理反求:cos A = (b² + c² − a²) / (2bc),再取反余弦。3-4-5 得到 36.87°、53.13°、90°,和恒为 180°。余弦定理是勾股定理的推广——当 A 为直角时 a² = b² + c²,公式自动退化为勾股定理。

三边能不能构成三角形

判断三边能否成三角形看三角不等式:任意两边之和必须大于第三边(1、1、5 不行,因为 1 + 1 < 5)。也可以看两边之差小于第三边,两种说法等价。工具在输入不合法时会提示,并顺带判断类型:比较最长边的平方与另两边平方和——相等是直角、小于为锐角、大于为钝角。

计算依据:面积用海伦公式(s = (a+b+c)/2,面积 = √(s(s−a)(s−b)(s−c)));内角用余弦定理 cos A = (b²+c²−a²)/(2bc) 反求;三角形可行性用三角不等式判断;类型判断按最长边平方与另两边平方和比较。

代码示例

JavaScript 海伦公式 + 余弦定理

function triangle(a, b, c) {
  if (a + b <= c || b + c <= a || a + c <= b) throw new Error("不构成三角形");
  const p = (a + b + c) / 2;                       // 半周长
  const area = Math.sqrt(p * (p - a) * (p - b) * (p - c));
  const ang = (x, y, z) =>
    Math.acos((y * y + z * z - x * x) / (2 * y * z)) * 180 / Math.PI;
  return { area, angles: [ang(a, b, c), ang(b, a, c), ang(c, a, b)] };
}

triangle(3, 4, 5);   // area 6, angles [90, 53.13, 36.87]

Python 同公式的 Python 版

import math

def triangle(a, b, c):
    assert a + b > c and b + c > a and a + c > b, "不构成三角形"
    p = (a + b + c) / 2
    area = math.sqrt(p * (p - a) * (p - b) * (p - c))
    ang = lambda x, y, z: math.degrees(
        math.acos((y * y + z * z - x * x) / (2 * y * z)))
    return area, [ang(a, b, c), ang(b, a, c), ang(c, a, b)]

triangle(3, 4, 5)   # (6.0, [90.0, 53.13, 36.87])

常见问题

只知道三边怎么算面积?

用海伦公式:s = (a+b+c)/2,面积 = √(s(s−a)(s−b)(s−c))。3-4-5 时 s = 6,面积 = √(6×3×2×1) = 6。三边若构不成三角形,根号内会出现负数或零。

内角是怎么算出来的?

余弦定理:cos A = (b² + c² − a²) / (2bc),取反余弦得角度。3-4-5 分别为 36.87°、53.13°、90°;7-8-9 约为 48.19°、58.41°、73.40°,三角之和恒为 180°。

三边满足什么条件才能构成三角形?

任意两边之和大于第三边(等价于任意两边之差小于第三边)。例如 1、1、5 不行;2、3、4 可以。工具会在不满足时直接提示,而不是给出错误的面积。

怎么判断是直角、锐角还是钝角三角形?

找出最长边 c,与 a² + b² 比较:相等是直角三角形(3-4-5),a² + b² > c² 是锐角三角形(4-5-6),a² + b² < c² 是钝角三角形(2-3-4)。

等腰三角形和等边三角形也适用吗?

适用。等边三角形的面积公式 (√3/4)a² 是海伦公式的特例:边长 5 得 10.8253,与工具结果一致。等腰三角形只需把两条相等边填进 a、b、c 中相应位置。

面积和长度的单位怎么处理?

单位保持一致即可:边长用厘米,面积就是平方厘米;边长用米,面积就是平方米。工具不换算单位,只做数学计算。

输入的三边数据会外传吗?

不会。三个数字只在浏览器本地完成开方与反三角函数运算,不上传、不记录;计算历史仅存本机浏览器,可一键清空,无痕模式关闭即消失。

延伸阅读

来自本站原创文章,讲清这个工具背后的算法与口径。