提升Go语言数学运算能力:math包使用指南
package main
import (
"fmt"
"math"
)
func main() {
// 常用数学常量
fmt.Printf("Half of the Euler's number: %f\n", math.E/2)
fmt.Printf("Square root of 2: %f\n", math.Sqrt2)
fmt.Printf("Square root of 3: %f\n", math.SqrtE)
fmt.Printf("Pi: %f\n", math.Pi)
// 最大/小整数
fmt.Printf("Max int: %d\n", math.MaxInt)
fmt.Printf("Min int: %d\n", math.MinInt)
// 取整和取余函数
x := 3.7
fmt.Printf("Floor of %f: %d\n", x, int(math.Floor(x)))
fmt.Printf("Ceil of %f: %d\n", x, int(math.Ceil(x)))
fmt.Printf("Round of %f: %d\n", x, int(math.Round(x)))
// 指数和对数函数
y := 8.0
fmt.Printf("Log2 of %f: %f\n", y, math.Log2(y))
fmt.Printf("Log10 of %f: %f\n", y, math.Log10(y))
fmt.Printf("Log of %f in base %f: %f\n", y, math.E, math.Log(y))
// 三角函数
angle := math.Pi / 4
fmt.Printf("Sine of %f: %f\n", angle, math.Sin(angle))
fmt.Printf("Cosine of %f: %f\n", angle, math.Cos(angle))
fmt.Printf("Tangent of %f: %f\n", angle, math.Tan(angle))
// 随机数生成
// 注意:在Go中使用随机数前需要先导入crypto/rand包并使用相关函数
// 这里仅为示例,不包含随机数生成的实际代码
// seed := time.Now().UnixNano()
// rand.Seed(seed)
// randomNumber := rand.Intn(100) // 生成0到99之间的随机整数
// fmt.Printf("Random number: %d\n", randomNumber)
}
这段代码展示了如何在Go语言中使用math包的常用函数,包括取整、取余、指数、对数、三角函数以及其他数学运算函数。同时,代码中包含了如何打印数学常量和最大最小整数,以及如何使用math包进行基本的数学运算。最后,代码中还展示了如何生成随机数,但需要注意的是,随机数生成的代码是为了示例,实际使用时需要导入crypto/rand包并使用正确的函数。
评论已关闭