惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

The Hacker News
The Hacker News
Google Online Security Blog
Google Online Security Blog
K
Kaspersky official blog
D
Darknet – Hacking Tools, Hacker News & Cyber Security
S
Schneier on Security
C
Cybersecurity and Infrastructure Security Agency CISA
Security Archives - TechRepublic
Security Archives - TechRepublic
Hacker News - Newest:
Hacker News - Newest: "LLM"
Cisco Talos Blog
Cisco Talos Blog
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Recent Commits to openclaw:main
Recent Commits to openclaw:main
Cyberwarzone
Cyberwarzone
L
LINUX DO - 最新话题
PCI Perspectives
PCI Perspectives
酷 壳 – CoolShell
酷 壳 – CoolShell
云风的 BLOG
云风的 BLOG
N
News and Events Feed by Topic
N
News and Events Feed by Topic
V
Vulnerabilities – Threatpost
T
Troy Hunt's Blog
GbyAI
GbyAI
C
CERT Recently Published Vulnerability Notes
G
Google Developers Blog
Microsoft Azure Blog
Microsoft Azure Blog
量子位
Scott Helme
Scott Helme
月光博客
月光博客
Attack and Defense Labs
Attack and Defense Labs
aimingoo的专栏
aimingoo的专栏
博客园 - 聂微东
Project Zero
Project Zero
G
GRAHAM CLULEY
博客园 - 【当耐特】
Recorded Future
Recorded Future
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
小众软件
小众软件
D
DataBreaches.Net
T
The Blog of Author Tim Ferriss
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
O
OpenAI News
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
V
V2EX
Stack Overflow Blog
Stack Overflow Blog
爱范儿
爱范儿
S
Security @ Cisco Blogs
The Last Watchdog
The Last Watchdog
MongoDB | Blog
MongoDB | Blog
H
Hacker News: Front Page
Latest news
Latest news
P
Proofpoint News Feed

博客园 - 立体风

Sigmoid 函数的数学起源与定义详解 路径在powershell 配置文件 Profile 和 环境变量 PATH 的区别 当AI构建自身 nana gui库的回调函数 Nana c++ gui库的对话框函数 -- 理解 nana 的运行机制 介绍 MSVC 的编译命令/ Zc CMake 变量 ${CMAKE_CURRENT_BINARY_DIR} 学习 nana c++ 库 (一) AutoHotkey v2 的源码学习路线 Visual Studio 中行号右边的黄色竖条 大O表示法推导 allocate 中为什么有两个L vs的cl.exe 编译器 c++20 基本配置 IT高频词 address Python Install Manager (PIM,官方安装管理器)简介 debian 中 contrib 软件仓库 debian 版本号及 apt 命令对软件的区分 sysctl的历史及常用命令 极限运算的法则 TeX 的 ctex 宏包的基本用法 XeLaTeX 的基本用法 XeLaTeX 介绍 为什么梯度向量 ∇f 指向函数值增长最快的方向 向量点积的几何定义的证明 方向导数公式的证明 仿射函数的定义及用途 凸集的定义及证明 在 LaTeX 公式中处理英文单词 梯度下降法 (Gradient Descent)的数学原理。 梯度下降法简介 向量形式表达最小二乘法 线性回归模型的核心数学表达式 risidual 音标和本义 coefficients的音标及本义(线性模型)
三角函数的余弦定理的证明
立体风 · 2025-09-08 · via 博客园 - 立体风

余弦定理(Law of Cosines)是直角三角形勾股定理的推广,它描述了任意一个平面三角形中,三条边长与其中一个角的余弦值之间的关系。

对于任意三角形 \(\triangle ABC\),其三条边分别为 \(a, b, c\),所对的角分别为 \(A, B, C\),余弦定理有以下三种形式:

  • \(a^2 = b^2 + c^2 - 2bc \cos A\)
  • \(b^2 = a^2 + c^2 - 2ac \cos B\)
  • \(c^2 = a^2 + b^2 - 2ab \cos C\)

下面我们将使用向量法几何法两种方式来证明它。


1. 向量法证明

向量法是证明余弦定理最简洁优雅的方式之一。

我们假设三角形的三个顶点 \(A, B, C\) 对应三个向量 \(\vec{A}, \vec{B}, \vec{C}\)
我们可以定义三条边对应的向量:

  • \(\vec{a} = \vec{C} - \vec{B}\),其长度为 \(|\vec{a}| = a\)
  • \(\vec{b} = \vec{A} - \vec{C}\),其长度为 \(|\vec{b}| = b\)
  • \(\vec{c} = \vec{B} - \vec{A}\),其长度为 \(|\vec{c}| = c\)

这三个向量满足向量和的关系:\(\vec{a} + \vec{b} + \vec{c} = \vec{0}\)
因此,我们可以写出:\(\vec{c} = -(\vec{a} + \vec{b})\)

现在我们来计算 \(c^2\)
\(c^2 = |\vec{c}|^2 = \vec{c} \cdot \vec{c}\)
\(c^2 = (-\vec{a} - \vec{b}) \cdot (-\vec{a} - \vec{b})\)
\(c^2 = (\vec{a} + \vec{b}) \cdot (\vec{a} + \vec{b})\)

根据向量点积的分配律,我们展开上式:
\(c^2 = \vec{a} \cdot \vec{a} + \vec{a} \cdot \vec{b} + \vec{b} \cdot \vec{a} + \vec{b} \cdot \vec{b}\)
\(c^2 = |\vec{a}|^2 + |\vec{b}|^2 + 2(\vec{a} \cdot \vec{b})\)

根据向量点积的定义 \(\vec{a} \cdot \vec{b} = |\vec{a}||\vec{b}|\cos\theta\),其中 \(\theta\) 是向量 \(\vec{a}\)\(\vec{b}\) 之间的夹角。

关键步骤:这里的 \(\vec{a}\)\(\vec{b}\) 是从不同的顶点出发的,它们的夹角并不是角 \(C\)。向量 \(\vec{a} = \vec{C}-\vec{B}\)\(\vec{b} = \vec{A}-\vec{C}\) 的夹角是 \(180^\circ - C\)。因此 \(\cos\theta = \cos(180^\circ - C) = -\cos C\)

将这个关系代入上式:
\(c^2 = |\vec{a}|^2 + |\vec{b}|^2 + 2(|\vec{a}||\vec{b}|\cos(180^\circ - C))\)
\(c^2 = a^2 + b^2 + 2(ab(-\cos C))\)
\(c^2 = a^2 + b^2 - 2ab \cos C\)

证毕。


2. 几何法证明(使用坐标系)

这种方法通过建立直角坐标系,利用勾股定理和距离公式进行证明。

  1. 建立坐标系
    将三角形的一个顶点 \(A\) 放置在原点 \((0, 0)\)
    将边 \(c\) 放置在 \(x\) 轴上,这样顶点 \(B\) 的坐标就是 \((c, 0)\)
    顶点 \(C\) 的坐标可以由边 \(b\) 和角 \(A\) 确定。根据三角函数的定义,顶点 \(C\) 的坐标是 \((b\cos A, b\sin A)\)

  2. 应用两点间距离公式
    现在我们来计算边 \(a\) 的长度,也就是点 \(B(c, 0)\) 和点 \(C(b\cos A, b\sin A)\) 之间的距离。根据距离公式,\(a^2\) 为:
    \(a^2 = (b\cos A - c)^2 + (b\sin A - 0)^2\)

  3. 展开并化简
    \(a^2 = (b^2 \cos^2 A - 2bc \cos A + c^2) + b^2 \sin^2 A\)
    \(a^2 = b^2 \cos^2 A + b^2 \sin^2 A + c^2 - 2bc \cos A\)

    我们提取公因式 \(b^2\)
    \(a^2 = b^2(\cos^2 A + \sin^2 A) + c^2 - 2bc \cos A\)

    根据三角恒等式 \(\sin^2 A + \cos^2 A = 1\)
    \(a^2 = b^2(1) + c^2 - 2bc \cos A\)
    \(a^2 = b^2 + c^2 - 2bc \cos A\)

证毕。

几何法(或代数法)的优点是直观,而向量法的优点是简洁,且能够轻松推广到三维甚至更高维空间。这两种证明都清楚地展示了余弦定理的正确性。