算法实现/数学/勾股定理
外观
在数学中,勾股定理或毕达哥拉斯定理是欧几里得几何中关于直角三角形(直角三角形)的三边之间的关系。就面积而言,它指出
在任何直角三角形中,斜边(与直角相对的边)为边的正方形的面积等于两条直角边(两条在直角处相交的边)为边的正方形的面积之和。
该定理可以用一个关于边长 a、b 和 c 的等式来写,通常称为勾股方程:[1]
其中 c 表示斜边的长度,a 和 b 表示另外两边的长度。
注意:对于大多数语言,内置的 hypot
函数执行相同的计算。这仅供教育目的。
(define (hypotenuse a b) (sqrt (+ (expt a 2) (expt b 2))))
;; Equivalent, but does not check the number of arguments
(define (hypotenuse . xs) (sqrt (fold (lambda (x acc) (+ (expt x 2) acc)) 0 xs)))
Function Hypotenuse(sideA as Double, sideB as Double) as Double
Hypotenuse = sqr(sideA^2 + sideB^2)
End Function
public static double hypotenuse(double sideA, double sideB) {
double hypotenuse = Math.sqrt((sideA*sideA) + (sideB*sideB));
return hypotenuse;
}
def hypotenuse(a,b):
return ( a**2 + b**2 )**.5
pythag a b = sqrt $ a^2 + b^2
const hypotenuse = (a,b) => Math.sqrt(a**2 + b**2)
- ↑ Judith D. Sally, Paul Sally (2007). "第 3 章:勾股数". 从根源到研究:数学问题的纵向发展. 美国数学会书店. p. 63. ISBN 0821844032.