📅  最后修改于: 2023-12-03 15:15:22.675000             🧑  作者: Mango
在 Golang 中的 math
包中,提供了许多数学函数来执行各种数学操作。math.Hypot
函数是其中之一,它用于计算给定两个直角三角形的两条边的长度,返回它们的欧几里德距离。
func Hypot(p, q float64) float64
Hypot
函数接收两个 float64
类型的参数 p
和 q
,代表两个直角三角形的两条直角边的长度。函数返回一个 float64
类型的值,即欧几里德距离。
package main
import (
"fmt"
"math"
)
func main() {
p := 3.0
q := 4.0
distance := math.Hypot(p, q)
fmt.Printf("直角三角形的直角边长度为 %v 和 %v 时,欧几里德距离为 %.2f", p, q, distance)
}
以上示例代码中,我们导入了 math
和 fmt
包,先声明了两个直角边的长度 p
和 q
,然后使用 math.Hypot
函数计算这两条直角边的欧几里德距离,并将结果打印输出。
输出结果为:
直角三角形的直角边长度为 3 和 4 时,欧几里德距离为 5.00
根据勾股定理,当直角三角形的两条直角边的长度分别为 3 和 4 时,斜边的长度应该为 5。math.Hypot
函数返回的结果也是 5,即欧几里德距离。
math.Hypot
函数只能用于计算两个直角边的欧几里德距离,不适用于其他类型的距离计算。float32
或 float64
),否则会在编译时发生错误。+Inf
或 -Inf
),或者是 NaN
,则函数会返回正无穷大(+Inf
)。更多关于 math.Hypot
函数的详细信息可以参考 官方文档。