Go语言学习之math包常用操作总结|Go主题月

2,065 阅读4分钟

作者:看那个码农

公众号:看那个码农

上期内容介绍了Go语言学习之力扣-丑数Ⅱ|Go主题月

  • 力扣-丑数Ⅱ

本篇内容将继续带领大家走进Go语言的世界。

1.本文简介

Go语言学习之math包常用操作总结

常用的19种方法如下:

2.math.IsNAN

math.IsNAN(f):判断f是否表示一个NaN(Not A Number)的值。

Go语言中,除数为0时并不会返回error或者nil,而是返回无穷大---> NAN(正无穷),表明数字太大溢出的情况,

函数math.IsNaN可以测试一个数值是否是NaN值,math.NaN的返回值是一个NaN值。

用法如下:

package main

import (
   "fmt"
   "math"
)

func main() {
   str:=0.0
   fmt.Println("请输入需要判断的数字:")
   fmt.Scan(&str)
   fmt.Printf("%v判断为:%v\n",str,math.IsNaN(str))

   str1:=math.NaN()
   fmt.Println("str1的判断为:",math.IsNaN(str1))
}

输出为:

image.png

3.math.Ceil

math.Ceil(x):返回不小于x最小整数(的浮点数)

用法如下:

package main

import (
   "fmt"
   "math"
)

func main() {
   str:=0.0
   fmt.Println("请输入需要判断的数字:")
   fmt.Scan(&str)
   fmt.Printf("返回输出的数字为:%v\n",math.Ceil(str))
}

输出为:

image.png

4.math.Floor

math.Floor(x):返回不大于x最小整数(的浮点数)

用法如下:

package main

import (
   "fmt"
   "math"
)

func main() {
   str:=0.0
   fmt.Println("请输入需要判断的数字:")
   fmt.Scan(&str)
   fmt.Printf("返回输出的数字为:%v\n",math.Floor(str))
}

输出为:

image.png

5.math.Trunc

math.Trunc(x):返回x整数部分(的浮点数)

用法如下:

package main

import (
   "fmt"
   "math"
)

func main() {
   str:=0.0
   fmt.Println("请输入需要判断的数字:")
   fmt.Scan(&str)
   fmt.Printf("返回输出的数字为:%v\n",math.Trunc(str))
}

输出为:

image.png

6.math.Abs

math.Abs(x):返回x绝对值

用法如下:

package main

import (
   "fmt"
   "math"
)

func main() {
   str:=0.0
   fmt.Println("请输入需要判断的数字:")
   fmt.Scan(&str)
   fmt.Printf("返回输出的数字为:%v\n",math.Abs(str))
}

输出为:

image.png

7.math.Max

math.Max(x,y):返回xy较大值

用法如下:

package main

import (
   "fmt"
   "math"
)

func main() {
   str:=0.0
   str1:=0.0
   fmt.Println("请输入需要判断的数字1:")
   fmt.Scan(&str)
   fmt.Println("请输入需要判断的数字2:")
   fmt.Scan(&str1)
   fmt.Printf("返回输出的较大数字为:%v\n",math.Max(str,str1))
}

输出为:

image.png

8.math.Min

math.Min(x,y):返回xy较小值

用法如下:

package main

import (
   "fmt"
   "math"
)

func main() {
   str:=0.0
   str1:=0.0
   fmt.Println("请输入需要判断的数字1:")
   fmt.Scan(&str)
   fmt.Println("请输入需要判断的数字2:")
   fmt.Scan(&str1)
   fmt.Printf("返回输出的较小数字为:%v\n",math.Min(str,str1))
}

输出为:

image.png

9.math.Dim

math.Dim(x,y):返回x-y0中的较大值

用法如下:

案例一

package main

import (
   "fmt"
   "math"
)

func main() {
   str:=0.0
   str1:=0.0
   fmt.Println("请输入需要判断的数字1:")
   fmt.Scan(&str)
   fmt.Println("请输入需要判断的数字2:")
   fmt.Scan(&str1)
   fmt.Printf("返回输出的判断为:%v\n",math.Dim(str,str1))
}

输出为:

image.png

案例二

package main

import (
   "fmt"
   "math"
)

func main() {
   str:=0.0
   str1:=0.0
   fmt.Println("请输入需要判断的数字1:")
   fmt.Scan(&str)
   fmt.Println("请输入需要判断的数字2:")
   fmt.Scan(&str1)
   fmt.Printf("返回输出的判断为:%v\n",math.Dim(str,str1))
}

输出为:

image.png

10.math.Mod

math.Mod(x)取余运算

用法如下:

package main

import (
   "fmt"
   "math"
)

func main() {
   str:=0.0
   str1:=0.0
   fmt.Println("请输入需要判断的数字1:")
   fmt.Scan(&str)
   fmt.Println("请输入需要判断的数字2:")
   fmt.Scan(&str1)
   fmt.Printf("返回输出的取余运算为:%v\n",math.Mod(str,str1))
}

输出为:

image.png

11.math.Sqrt

math.Sqrt(x):返回x二次方根

用法如下:

package main

import (
   "fmt"
   "math"
)

func main() {
   str:=0.0
   fmt.Println("请输入需要运算的数字:")
   fmt.Scan(&str)
   fmt.Printf("返回输出的二次方根为:%v\n",math.Sqrt(str))
}

输出为:

image.png

12.math.Cbrt

math.Cbrt(x):返回x三次方根

用法如下:

package main

import (
   "fmt"
   "math"
)

func main() {
   str:=0.0
   fmt.Println("请输入需要运算的数字:")
   fmt.Scan(&str)
   fmt.Printf("返回输出的三次方根为:%v\n",math.Cbrt(str))
}

输出为:

image.png

13.math.Hypot

math.Hypot(x,y):返回Sqrt(pp+qq)

用法如下:

package main

import (
   "fmt"
   "math"
)

func main() {
   str:=0.0
   str1:=0.0
   fmt.Println("请输入需要运算的数字1:")
   fmt.Scan(&str)
   fmt.Println("请输入需要运算的数字2:")
   fmt.Scan(&str1)
   fmt.Printf("返回输出的Hypot计算结果为:%v\n",math.Hypot(str,str1))
}

输出为:

image.png

14.math.Pow

math.Pow(x,y):返回x^y

用法如下:

package main

import (
   "fmt"
   "math"
)

func main() {
   str:=0.0
   str1:=0.0
   fmt.Println("请输入需要运算的数字1:")
   fmt.Scan(&str)
   fmt.Println("请输入需要运算的数字2:")
   fmt.Scan(&str1)
   fmt.Printf("返回输出的Pow(x^y)计算结果为:%v\n",math.Pow(str,str1))
}

输出为:

image.png

15.math.Log

math.Log(x):求自然对数

用法如下:

package main

import (
   "fmt"
   "math"
)

func main() {
   str:=0.0
   fmt.Println("请输入需要运算的数字:")
   fmt.Scan(&str)
   fmt.Printf("返回输出的Log计算结果为:%v\n",math.Log(str))
}

输出为:

image.png

16.math.Log2

math.Log2(x):求2为底自然对数

用法如下:

package main

import (
   "fmt"
   "math"
)

func main() {
   str:=0.0
   fmt.Println("请输入需要运算的数字:")
   fmt.Scan(&str)
   fmt.Printf("返回输出的Log2计算结果为:%v\n",math.Log(str))
}

输出为:

image.png

17.math.Log10

math.Log10(x):求10为底自然对数

用法如下:

package main

import (
   "fmt"
   "math"
)

func main() {
   str:=0.0
   fmt.Println("请输入需要运算的数字:")
   fmt.Scan(&str)
   fmt.Printf("返回输出的Log10计算结果为:%v\n",math.Log(str))
}

输出为:

image.png

18.math.Sin

math.Sin(x):求正弦

用法如下:

package main

import (
   "fmt"
   "math"
)

func main() {
   str:=0.0
   fmt.Println("请输入需要运算的数字:")
   fmt.Scan(&str)
   fmt.Printf("返回输出的sin计算结果为:%v\n",math.Sin(str))
}

输出为:

image.png

19.math.Cos

math.Cos(x):求余弦

用法如下:

package main

import (
   "fmt"
   "math"
)

func main() {
   str:=0.0
   fmt.Println("请输入需要运算的数字:")
   fmt.Scan(&str)
   fmt.Printf("返回输出的cos计算结果为:%v\n",math.Cos(str))
}

输出为:

image.png

20.math.Tan

math.Tan(x):求正切

用法如下:

package main

import (
   "fmt"
   "math"
)

func main() {
   str:=0.0
   fmt.Println("请输入需要运算的数字:")
   fmt.Scan(&str)
   fmt.Printf("返回输出的Tan计算结果为:%v\n",math.Tan(str))
}

输出为:

image.png

如果你觉得这篇内容对你有帮助的话:

1、点赞支持下吧,让更多的人也能看到这篇内容

2、关注公众号:看那个码农,我们一起学习一起进步。