go语言中的math库
go语言中的math库
简介
Go语言的 math 包提供了许多数学函数和常量,涵盖了各种数学运算。以下是一些常用函数的介绍:
Abs(x float64) float64:返回x的绝对值。
Ceil(x float64) float64:返回不小于x的最小整数值。
Cos(x float64) float64:返回x的余弦值(x以弧度为单位)。
Exp(x float64) float64:返回自然指数e的x次幂。
Floor(x float64) float64:返回不大于x的最大整数值。
Log(x float64) float64:返回x的自然对数。
Max(x, y float64) float64:返回x和y中的最大值。
Min(x, y float64) float64:返回x和y中的最小值。
Mod(x, y float64) float64:返回x除以y的余数。
Pow(x, y float64) float64:返回x的y次幂。
Round(x float64) float64:返回四舍五入到最接近的整数值。
Sin(x float64) float64:返回x的正弦值(x以弧度为单位)。
Sqrt(x float64) float64:返回x的平方根。
Tan(x float64) float64:返回x的正切值(x以弧度为单位)。
除此之外,math 包还包括一些常量,如:
math.E:自然常数e。
math.Pi:圆周率π。
math.Sqrt2:2的平方根。
math.SqrtE:自然常数e的平方根。
math.SqrtPi:圆周率π的平方根。
math.Ln2:2的自然对数。
math.Log2E:以2为底的自然对数e的倒数。
math.Log10E:以10为底的自然对数e的倒数。
math.MaxFloat64:float64类型能够表示的最大值。
math.SmallestonzeroFloat64:float64类型中能够表示的最小非零值。
需要注意的是,由于浮点数计算可能存在舍入误差,因此在进行精确计算时需考虑这些误差。
例题
1. 求两点之间的距离
代码语言:javascript代码运行次数:0运行复制package main
import (
"fmt"
"math"
)
func distance(x1, y1, x2, y2 float64) float64 {
a := x2 - x1
b := y2 - y1
return math.Sqrt(a*a + b*b)
}
func main() {
fmt.Println(distance(0, 0, , 4))
}
运行结果:
2. 求一个数组的平均值
代码语言:javascript代码运行次数:0运行复制package main
import (
"fmt"
"math"
)
func average(numbers []float64) float64 {
total := 0.0
for _, value := range numbers {
total += value
}
return total / float64(len(numbers))
}
func main() {
numbers := []float64{98, 9, 77, 82, 8}
fmt.Println("Average:", math.Round(average(numbers)*100)/100)
}
运行结果:
. 求三角形面积
代码语言:javascript代码运行次数:0运行复制package main
import (
"fmt"
"math"
)
func triangleArea(a, b, c float64) float64 {
s := (a + b + c) / 2.0
return math.Sqrt(s * (s - a) * (s - b) * (s - c))
}
func main() {
a := .0
b := 4.0
c := 5.0
fmt.Println("Triangle area:", triangleArea(a, b, c))
}
运行结果:
4. 求正弦函数的值
代码语言:javascript代码运行次数:0运行复制package main
import (
"fmt"
"math"
)
func sin(x float64) float64 {
return math.Sin(x)
}
func main() {
x := math.Pi / 6
fmt.Printf("sin(%v) = %v\n", x, sin(x))
}
运行结果:
5. 求对数函数的值
代码语言:javascript代码运行次数:0运行复制package main
import (
"fmt"
"math"
)
func log(x float64) float64 {
return math.Log10(x)
}
func main() {
x := 100.0
fmt.Printf("log(%v) = %v\n", x, log(x))
}
运行结果:
#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格
推荐阅读
留言与评论(共有 12 条评论) |
本站网友 麝香是什么动物身上的哪个部位 | 20分钟前 发表 |
Tan(x float64) float64:返回x的正切值(x以弧度为单位) | |
本站网友 高速宝 | 27分钟前 发表 |
b | |
本站网友 海参的功效 | 3分钟前 发表 |
= math.Pi / 6 fmt.Printf("sin(%v) = %v\n" | |
本站网友 生拌牛肉 | 17分钟前 发表 |
Pow(x | |
本站网友 昆山二手房信息 | 22分钟前 发表 |
4)) }运行结果: 2. 求一个数组的平均值代码语言:javascript代码运行次数:0运行复制package main import ( "fmt" "math" ) func average(numbers []float64) float64 { total | |
本站网友 汉王orc | 22分钟前 发表 |
math.Round(average(numbers)*100)/100) }运行结果: . 求三角形面积代码语言:javascript代码运行次数:0运行复制package main import ( "fmt" "math" ) func triangleArea(a | |
本站网友 微软公司 | 8分钟前 发表 |
y float64) float64:返回x和y中的最大值 | |
本站网友 怎么配眼镜 | 29分钟前 发表 |
go语言中的math库 go语言中的math库简介Go语言的 math 包提供了许多数学函数和常量 | |
本站网友 醋酸泼尼松片说明书 | 3分钟前 发表 |
x | |
本站网友 枳壳 | 26分钟前 发表 |
涵盖了各种数学运算 | |
本站网友 贺州学院地址 | 13分钟前 发表 |
triangleArea(a |