前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Go-标准库-math

Go-标准库-math

原创
作者头像
堕落飞鸟
发布2023-04-22 09:13:31
3730
发布2023-04-22 09:13:31
举报
文章被收录于专栏:飞鸟的专栏

Go是一种静态类型、编译型语言,被广泛应用于构建高性能和可靠的后端服务和系统工具。Go语言的标准库中包含了丰富的函数和类型,其中math是一个很重要的包,提供了各种数学运算函数。

常量

math包中定义了一些常量,如下所示:

  • math.E:自然常数 e。
  • math.Pi:圆周率 π。
  • math.Phi:黄金分割比例,(1+√5)/2。
  • math.Sqrt2:2的平方根。
  • math.SqrtE:e的平方根。
  • math.SqrtPi:π的平方根。
  • math.SqrtPhi:黄金分割比例的平方根。
  • math.Ln2:2的自然对数。
  • math.Log2E:以2为底e的对数。
  • math.Ln10:10的自然对数。
  • math.Log10E:以10为底e的对数。

这些常量可以在进行各种数学运算时使用。

函数

math包中提供了各种数学运算函数,下面是一些常用的函数:

Abs(x float64) float64

Abs函数返回x的绝对值。

示例:

代码语言:javascript
复制
package main

import (
    "fmt"
    "math"
)

func main() {
    fmt.Println(math.Abs(-12))    // Output: 12
    fmt.Println(math.Abs(3.1415)) // Output: 3.1415
    fmt.Println(math.Abs(0))      // Output: 0
}

Ceil(x float64) float64

Ceil函数返回大于或等于x的最小整数。

示例:

代码语言:javascript
复制
package main

import (
    "fmt"
    "math"
)

func main() {
    fmt.Println(math.Ceil(3.1415)) // Output: 4
    fmt.Println(math.Ceil(1.5))    // Output: 2
    fmt.Println(math.Ceil(-2.5))   // Output: -2
}

Floor(x float64) float64

Floor函数返回小于或等于x的最大整数。

示例:

代码语言:javascript
复制
package main

import (
    "fmt"
    "math"
)

func main() {
    fmt.Println(math.Floor(3.1415)) // Output: 3
    fmt.Println(math.Floor(1.5))    // Output: 1
    fmt.Println(math.Floor(-2.5))   // Output: -3
}

Max(x, y float64) float64

Max函数返回x和y中的最大值。

示例:

代码语言:javascript
复制
package main

import (
    "fmt"
    "math"
)

func main() {
    fmt.Println(math.Max(3, 5))        // Output: 5
    fmt.Println(math.Max(-3.5, -2.5))  // Output: -2.5
    fmt.Println(math.Max(3.1415, 3.14)) // Output: 3.1415
}

Min(x, y float64) float64

Min函数返回x和y中的最小值。

示例:

代码语言:javascript
复制
package main

import (
    "fmt"
    "math"
)

func main() {
    fmt.Println(math.Min(3, 5))        // Output: 3
    fmt.Println(math.Min(-3.5, -2.5))  // Output: -3.5
    fmt.Println(math.Min(3.1415, 3.14)) // Output: 3.14
}

Pow(x, y float64) float64

Pow函数返回x的y次方。

示例:

代码语言:javascript
复制
package main

import (
    "fmt"
    "math"
)

func main() {
    fmt.Println(math.Pow(2, 3))    // Output: 8
    fmt.Println(math.Pow(3, 2))    // Output: 9
    fmt.Println(math.Pow(1.5, 0))  // Output: 1
    fmt.Println(math.Pow(1.5, -2)) // Output: 0.4444444444444444
}

Sqrt(x float64) float64

Sqrt函数返回x的平方根。

示例:

代码语言:javascript
复制
package main

import (
    "fmt"
    "math"
)

func main() {
    fmt.Println(math.Sqrt(4))      // Output: 2
    fmt.Println(math.Sqrt(2))      // Output: 1.4142135623730951
    fmt.Println(math.Sqrt(0.25))   // Output: 0.5
    fmt.Println(math.Sqrt(0))      // Output: 0
    fmt.Println(math.Sqrt(-1.0))   // Output: NaN
}

Trunc(x float64) float64

Trunc函数返回x的整数部分。

示例:

代码语言:javascript
复制
package main

import (
    "fmt"
    "math"
)

func main() {
    fmt.Println(math.Trunc(3.1415)) // Output: 3
    fmt.Println(math.Trunc(-1.5))   // Output: -1
    fmt.Println(math.Trunc(2.5))    // Output: 2
}

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 常量
  • 函数
    • Abs(x float64) float64
      • Ceil(x float64) float64
        • Floor(x float64) float64
          • Max(x, y float64) float64
            • Min(x, y float64) float64
              • Pow(x, y float64) float64
                • Sqrt(x float64) float64
                  • Trunc(x float64) float64
                  领券
                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档