算例
四組算例均由引擎 pythagorean 的 compute 復算;顯示口徑為最多 8 位小數、去尾零。
算例 1:經典 3-4-5
輸入:a=3,b=4。
- a2+b2=9+16=25。
- c=25=5。
- 面積 S=3×4/2=6。
界面顯示:斜邊 5,面積 6。這是最小的整數勾股數組,《周髀算經》裏「勾三股四弦五」説的就是它。
圖 1:算例 1 的直角三角形。斜邊是直角所對的邊,永遠最長
算例 2:已知斜邊反解直角邊
輸入:c=13,b=5(清空 a)。
- c2−b2=169−25=144。
- a=144=12。
界面顯示:直角邊 a 12。注意此時「面積」字段顯示 0:引擎只在兩條直角邊都是輸入時計算面積,反解出的 a 不參與面積計算。要看面積,把 12 填回「直角邊 a」並清空斜邊即可得到 30。
算例 3:梯子問題
一架 6.5 m 長的梯子靠在牆上,梯腳離牆 2.5 m,梯頂有多高?這裏斜邊是梯子,直角邊是「離牆距離」與「高度」。
輸入:c=6.5,a=2.5(清空 b)。
- c2−a2=42.25−6.25=36。
- b=36=6。
界面顯示:直角邊 b 6。反過來若已知離牆 2.5 m、高 6 m,輸入 a=2.5、b=6 得斜邊 6.5、面積 7.5。
算例 4:無理數結果與屏幕對角線
輸入:a=1,b=1:c=2,界面顯示 1.41421356(8 位小數),面積 0.5。這是歷史上第一個被證明「不是分數」的長度。
輸入:a=1920,b=1080(一塊 1080p 屏幕的像素寬高):對角線 2202.90717008 像素。若這塊屏幕標稱 27 英寸(對角線 27 in),則用 c=27、b=13.24(高)反解得寬 23.53088184 in——「27 英寸」指的是對角線而不是寬度。
算例 1 的輸入可以直接填進面板復現;把 a、b 都改成 1,斜邊變為 1.41421356。
原理與推導
為什麼直角邊的平方和等於斜邊的平方
最直觀的證明是拼圖。取一個邊長為 a+b 的大正方形,有兩種方法把它切開:
- 切法一:在四條邊上各取一點,把大正方形分成四個全等的直角三角形(直角邊 a、b)和中間一個傾斜的正方形。傾斜正方形的邊正是直角三角形的斜邊 c,所以中間的面積是 c2。
- 切法二:把同樣四個三角形兩兩拼成兩個 a×b 的矩形,放在大正方形的兩個角上,剩下的正好是一個 a×a 和一個 b×b 的正方形,面積 a2+b2。
兩種切法用掉的四個三角形完全相同,大正方形也相同,所以剩下的面積必須相等:c2=a2+b2。
圖 2:同一個 (a+b)² 的兩種切法。四個三角形相同,所以 c² = a² + b²
歐幾里得《幾何原本》第一卷命題 47 給出的是另一種證明——在三邊上向外作正方形,證明兩個小正方形的面積之和等於大正方形的面積;命題 48 證明了逆定理:如果一個三角形滿足 a2+b2=c2,那麼它一定是直角三角形。逆定理是工程上「用 3-4-5 放直角」的依據:量出 3、4、5 三段長度圍成的三角形,夾角就是精確的 90°。
它其實是「距離」的定義
在直角座標系裏,從 (x1,y1) 到 (x2,y2) 的兩段位移 Δx、Δy 互相垂直,所以兩點的直線距離就是斜邊:d=Δx2+Δy2。這就是兩點距離計算器的公式;推廣到三維只是再用一次勾股(先算底面對角線,再與高度組成新的直角三角形)。向量的模、複數的模、統計裏的標準差(偏差平方和的平方根)都是同一個式子。
與餘弦定理的關係
對任意三角形,c2=a2+b2−2abcosC。當夾角 C=90° 時 cosC=0,最後一項消失,就退化為勾股定理。所以勾股定理是餘弦定理在直角情形下的特例;反過來,c2 與 a2+b2 的大小關係可以判斷夾角是鋭角(c2<a2+b2)還是鈍角(c2>a2+b2)。
勾股數
三條邊都是整數的直角三角形叫勾股數組(畢達哥拉斯三元組)。最小的幾組:
| (a,b,c) |
檢驗 |
| (3, 4, 5) |
9+16=25 |
| (5, 12, 13) |
25+144=169 |
| (8, 15, 17) |
64+225=289 |
| (7, 24, 25) |
49+576=625 |
| (20, 21, 29) |
400+441=841 |
歐幾里得公式可以生成全部本原勾股數:取互質且奇偶不同的正整數 m>n,令 a=m2−n2,b=2mn,c=m2+n2。m=2,n=1 給出 (3, 4, 5);m=3,n=2 給出 (5, 12, 13)。任何一組勾股數按比例縮放仍是勾股數——(6, 8, 10)、(0.3, 0.4, 0.5) 在計算器裏同樣得到整齊的結果。
歷史
巴比倫泥板 Plimpton 322(約公元前 1800 年)已列出大量勾股數;中國《周髀算經》記載「勾三股四弦五」,《九章算術》「勾股」章系統給出了用勾股定理解題的方法,趙爽為其作注時的「弦圖」正是上面的拼圖證明;畢達哥拉斯學派(約公元前 6 世紀)被認為給出了最早的一般性證明,也因為 2 的發現意識到存在不能寫成分數的長度。「勾」「股」是直角三角形兩條直角邊的古稱(短邊為勾,長邊為股),「弦」是斜邊。
只在平面上成立
勾股定理是歐幾里得平面幾何的定理。在球面上,兩條互相垂直的大圓弧 a、b 與第三條邊 c 滿足的是 cosc=cosacosb(單位球),只有當三邊遠小於球半徑時才近似回到 a2+b2=c2。地圖上幾十公里內可以放心用勾股,跨洲的距離要用球面公式。