math
math包
import "math"
概述
索引
示例
子目录
概述
math 包提供了基本的常量和数学函数。
软件包不保证跨体系结构的位相同结果。
索引
- 常量
- func Abs(x float64) float64
- func Acos(x float64) float64
- func Acosh(x float64) float64
- func Asin(x float64) float64
- func Asinh(x float64) float64
- func Atan(x float64) float64
- func Atan2(y, x float64) float64
- func Atanh(x float64) float64
- func Cbrt(x float64) float64
- func Ceil(x float64) float64
- func Copysign(x, y float64) float64
- func Cos(x float64) float64
- func Cosh(x float64) float64
- func Dim(x, y float64) float64
- func Erf(x float64) float64
- func Erfc(x float64) float64
- func Exp(x float64) float64
- func Exp2(x float64) float64
- func Expm1(x float64) float64
- func Float32bits(f float32) uint32
- func Float32frombits(b uint32) float32
- func Float64bits(f float64) uint64
- func Float64frombits(b uint64) float64
- func Floor(x float64) float64
- func Frexp(f float64) (frac float64, exp int)
- func Gamma(x float64) float64
- func Hypot(p, q float64) float64
- func Ilogb(x float64) int
- func Inf(sign int) float64
- func IsInf(f float64, sign int) bool
- func IsNaN(f float64) (is bool)
- func J0(x float64) float64
- func J1(x float64) float64
- func Jn(n int, x float64) float64
- func Ldexp(frac float64, exp int) float64
- func Lgamma(x float64) (lgamma float64, sign int)
- func Log(x float64) float64
- func Log10(x float64) float64
- func Log1p(x float64) float64
- func Log2(x float64) float64
- func Logb(x float64) float64
- func Max(x, y float64) float64
- func Min(x, y float64) float64
- func Mod(x, y float64) float64
- func Modf(f float64) (int float64, frac float64)
- func NaN() float64
- func Nextafter(x, y float64) (r float64)
- func Nextafter32(x, y float32) (r float32)
- func Pow(x, y float64) float64
- func Pow10(n int) float64
- func Remainder(x, y float64) float64
- func Signbit(x float64) bool
- func Sin(x float64) float64
- func Sincos(x float64) (sin, cos float64)
- func Sinh(x float64) float64
- func Sqrt(x float64) float64
- func Tan(x float64) float64
- func Tanh(x float64) float64
- func Trunc(x float64) float64
- func Y0(x float64) float64
- func Y1(x float64) float64
- func Yn(n int, x float64) float64
示例
Sqrt
文件包
abs.go acosh.go asin.go asinh.go atan.go atan2.go atanh.go bits.go cbrt.go const.go copysign.go dim.go erf.go exp.go expm1.go floor.go floor_asm.go frexp.go gamma.go hypot.go j0.go j1.go jn.go ldexp.go lgamma.go log.go log10.go log1p.go logb.go mod.go modf.go nextafter.go pow.go pow10.go remainder.go signbit.go sin.go sincos.go sinh.go sqrt.go tan.go tanh.go unsafe.go
常量
数学常数。
const (
E = 2.71828182845904523536028747135266249775724709369995957496696763 // http://oeis.org/A001113
Pi = 3.14159265358979323846264338327950288419716939937510582097494459 // http://oeis.org/A000796
Phi = 1.61803398874989484820458683436563811772030917980576286213544862 // http://oeis.org/A001622
Sqrt2 = 1.41421356237309504880168872420969807856967187537694807317667974 // http://oeis.org/A002193
SqrtE = 1.64872127070012814684865078781416357165377610071014801157507931 // http://oeis.org/A019774
SqrtPi = 1.77245385090551602729816748334114518279754945612238712821380779 // http://oeis.org/A002161
SqrtPhi = 1.27201964951406896425242246173749149171560804184009624861664038 // http://oeis.org/A139339
Ln2 = 0.693147180559945309417232121458176568075500134360255254120680009 // http://oeis.org/A002162
Log2E = 1 / Ln2
Ln10 = 2.30258509299404568401799145468436420760110148862877297603332790 // http://oeis.org/A002392
Log10E = 1 / Ln10
)
浮点限制值。最大值是该类型可表示的最大有限值。SmallestNonzero 是类型可表示的最小正值,非零值。
const (
MaxFloat32 = 3.40282346638528859811704183484516925440e+38 // 2**127 * (2**24 - 1) / 2**23
SmallestNonzeroFloat32 = 1.401298464324817070923729583289916131280e-45 // 1 / 2**(127 - 1 + 23)
MaxFloat64 = 1.797693134862315708145274237317043567981e+308 // 2**1023 * (2**53 - 1) / 2**52
SmallestNonzeroFloat64 = 4.940656458412465441765687928682213723651e-324 // 1 / 2**(1023 - 1 + 52)
)
整数限制值。
const (
MaxInt8 = 1<<7 - 1
MinInt8 = -1 << 7
MaxInt16 = 1<<15 - 1
MinInt16 = -1 << 15
MaxInt32 = 1<<31 - 1
MinInt32 = -1 << 31
MaxInt64 = 1<<63 - 1
MinInt64 = -1 << 63
MaxUint8 = 1<<8 - 1
MaxUint16 = 1<<16 - 1
MaxUint32 = 1<<32 - 1
MaxUint64 = 1<<64 - 1
)
func Abs(显示源文件)
func Abs(x float64) float64
Abs 返回x的绝对值。
特殊情况是:
Abs(±Inf) = +Inf
Abs(NaN) = NaN
func Acos(显示源文件)
func Acos(x float64) float64
Acos 返回x的弧度,弧度。
特例是:
Acos(x) = NaN if x < -1 or x > 1
func Acosh(显示源文件)
func Acosh(x float64) float64
Acosh 返回x的反双曲余弦。
特殊情况是:
Acosh(+Inf) = +Inf
Acosh(x) = NaN if x < 1
Acosh(NaN) = NaN
func Asin(显示源文件)
func Asin(x float64) float64
Asin返回x的弧度,以弧度表示。
特殊情况是:
Asin(±0) = ±0
Asin(x) = NaN if x < -1 or x > 1
func Asinh(显示源文件)
func Asinh(x float64) float64
Asinh返回x的反双曲正弦。
特殊情况是:
Asinh(±0) = ±0
Asinh(±Inf) = ±Inf
Asinh(NaN) = NaN
func Atan(显示源文件)
func Atan(x float64) float64
Atan以弧度返回x的反正切。
特殊情况是:
Atan(±0) = ±0
Atan(±Inf) = ±Pi/2
func Atan2(显示源文件)
func Atan2(y, x float64) float64
Atan2返回 y/x 的反正切,使用两者的符号来确定返回值的象限。
特殊情况是(按顺序):
Atan2(y, NaN) = NaN
Atan2(NaN, x) = NaN
Atan2(+0, x>=0) = +0
Atan2(-0, x>=0) = -0
Atan2(+0, x<=-0) = +Pi
Atan2(-0, x<=-0) = -Pi
Atan2(y>0, 0) = +Pi/2
Atan2(y<0, 0) = -Pi/2
Atan2(+Inf, +Inf) = +Pi/4
Atan2(-Inf, +Inf) = -Pi/4
Atan2(+Inf, -Inf) = 3Pi/4
Atan2(-Inf, -Inf) = -3Pi/4
Atan2(y, +Inf) = 0
Atan2(y>0, -Inf) = +Pi
Atan2(y<0, -Inf) = -Pi
Atan2(+Inf, x) = +Pi/2
Atan2(-Inf, x) = -Pi/2
func Atanh(显示源文件)
func Atanh(x float64) float64
Atanh返回x的反双曲正切。
特殊情况是:
Atanh(1) = +Inf
Atanh(±0) = ±0
Atanh(-1) = -Inf
Atanh(x) = NaN if x < -1 or x > 1
Atanh(NaN) = NaN
func Cbrt(显示源文件)
func Cbrt(x float64) float64
Cbrt返回x的立方根。
特殊情况是:
Cbrt(±0) = ±0
Cbrt(±Inf) = ±Inf
Cbrt(NaN) = NaN
func Ceil(显示源文件)
func Ceil(x float64) float64
Ceil返回大于或等于x的最小整数值。
特殊情况是:
Ceil(±0) = ±0
Ceil(±Inf) = ±Inf
Ceil(NaN) = NaN
func Copysign(显示源文件)
func Copysign(x, y float64) float64
Copysign 返回值为x的大小和y的符号。
func Cos(显示源文件)
func Cos(x float64) float64
Cos返回弧度参数x的余弦。
特殊情况是:
Cos(±Inf) = NaN
Cos(NaN) = NaN
func Cosh(显示源文件)
func Cosh(x float64) float64
Cosh返回x的双曲余弦。
特殊情况是:
Cosh(±0) = 1
Cosh(±Inf) = +Inf
Cosh(NaN) = NaN
func Dim(显示源文件)
func Dim(x, y float64) float64
Dim返回xy或0的最大值。
特殊情况是:
Dim(+Inf, +Inf) = NaN
Dim(-Inf, -Inf) = NaN
Dim(x, NaN) = Dim(NaN, x) = NaN
func Erf(显示源文件)
func Erf(x float64) float64
Erf返回x的错误函数。
特殊情况是:
Erf(+Inf) = 1
Erf(-Inf) = -1
Erf(NaN) = NaN
func Erfc(显示源文件)
func Erfc(x float64) float64
Erfc返回x的互补误差函数。
特殊情况是:
Erfc(+Inf) = 0
Erfc(-Inf) = 2
Erfc(NaN) = NaN
func Exp(显示源文件)
func Exp(x float64) float64
Exp返回e ** x,即x的基数e指数。
特殊情况是:
Exp(+Inf) = +Inf
Exp(NaN) = NaN
非常大的值溢出到0或+ Inf。非常小的值下溢到1。
func Exp2(显示源文件)
func Exp2(x float64) float64
Exp2返回2 ** x,x的基数为2的指数。
特殊情况与Exp相同。
func Expm1(显示源文件)
func Expm1(x float64) float64
Expm1返回e ** x - 1,即x减1的基e指数。当x接近零时,它比Exp(x) - 1更准确。
特殊情况是:
Expm1(+Inf) = +Inf
Expm1(-Inf) = -1
Expm1(NaN) = NaN
非常大的值溢出到-1或+ Inf。
func Float32bits(显示源文件)
func Float32bits(f float32) uint32
Float32bits返回f的IEEE 754二进制表示。
func Float32frombits(显示源文件)
func Float32frombits(b uint32) float32
Float32frombits返回对应于IEEE 754二进制表示b的浮点数。
func Float64bits(显示源文件)
func Float64bits(f float64) uint64
Float64bits返回f的IEEE 754二进制表示。
func Float64frombits(显示源文件)
func Float64frombits(b uint64) float64
Float64frombits返回对应于IEEE 754二进制表示的浮点数b。
func Floor(显示源文件)
func Floor(x float64) float64
Floor返回小于或等于x的最大整数值。
特殊情况是:
Floor(±0) = ±0
Floor(±Inf) = ±Inf
Floor(NaN) = NaN
func Frexp(显示源文件)
func Frexp(f float64) (frac float64, exp int)
Frexp将f分解为归一化分数和两个整数幂。它返回满足f == frac×2 ** exp的frac和exp,并且在区间[½,1)中具有frac的绝对值。
特殊情况是:
Frexp(±0) = ±0, 0
Frexp(±Inf) = ±Inf, 0
Frexp(NaN) = NaN, 0
func Gamma(显示源文件)
func Gamma(x float64) float64
Gamma返回x的Gamma函数。
特殊情况是:
Gamma(+Inf) = +Inf
Gamma(+0) = +Inf
Gamma(-0) = -Inf
Gamma(x) = NaN for integer x < 0
Gamma(-Inf) = NaN
Gamma(NaN) = NaN
func Hypot(显示源文件)
func Hypot(p, q float64) float64
Hypot返回Sqrt(p * p + q * q),注意避免不必要的溢出和下溢。
特殊情况是:
Hypot(±Inf, q) = +Inf
Hypot(p, ±Inf) = +Inf
Hypot(NaN, q) = NaN
Hypot(p, NaN) = NaN
func Ilogb(显示源文件)
func Ilogb(x float64) int
Ilogb以整数形式返回x的二进制指数。
特殊情况是:
Ilogb(±Inf) = MaxInt32
Ilogb(0) = MinInt32
Ilogb(NaN) = MaxInt32
func Inf(显示源文件)
func Inf(sign int) float64
如果符号> = 0,则Inf返回正无穷大;如果符号<0,则返回负无穷大。
func IsInf(显示源文件)
func IsInf(f float64, sign int) bool
根据符号,IsInf报告f是否是无穷大。如果符号> 0,则IsInf报告f是否为正无穷。如果符号<0,则IsInf报告f是否为负无穷。如果符号== 0,则IsInf报告f是无穷大。
func IsNaN(显示源文件)
func IsNaN(f float64) (is bool)
IsNaN报告f是否是IEEE 754“非数字”值。
func J0(显示源文件)
func J0(x float64) float64
J0返回第一类的零阶Bessel函数。
特殊情况是:
J0(±Inf) = 0
J0(0) = 1
J0(NaN) = NaN
func J1(显示源文件)
func J1(x float64) float64
J1返回第一类的一阶贝塞尔函数。
特殊情况是:
J1(±Inf) = 0
J1(NaN) = NaN
func Jn(显示源文件)
func Jn(n int, x float64) float64
Jn返回第一类的n阶Bessel函数。
特殊情况是:
Jn(n, ±Inf) = 0
Jn(n, NaN) = NaN
func Ldexp(显示源文件)
func Ldexp(frac float64, exp int) float64
Ldexp 与 Frexp 相反。它返回 frac ×2 ** exp。
特殊情况是:
Ldexp(±0, exp) = ±0
Ldexp(±Inf, exp) = ±Inf
Ldexp(NaN, exp) = NaN
func Lgamma(显示源文件)
func Lgamma(x float64) (lgamma float64, sign int)
Lgamma返回Gamma(x)的自然对数和符号(-1或+1)。
特殊情况是:
Lgamma(+Inf) = +Inf
Lgamma(0) = +Inf
Lgamma(-integer) = +Inf
Lgamma(-Inf) = -Inf
Lgamma(NaN) = NaN
func Log(显示源文件)
func Log(x float64) float64
Log返回x的自然对数。
特殊情况是:
Log(+Inf) = +Inf
Log(0) = -Inf
Log(x < 0) = NaN
Log(NaN) = NaN
func Log10(显示源文件)
func Log10(x float64) float64
Log10返回x的小数对数。特殊情况与Log相同。
func Log1p(显示源文件)
func Log1p(x float64) float64
Log1p返回自然对数1加上其参数x。当x接近零时,它比Log(1 + x)更准确。
特殊情况是:
Log1p(+Inf) = +Inf
Log1p(±0) = ±0
Log1p(-1) = -Inf
Log1p(x < -1) = NaN
Log1p(NaN) = NaN
func Log2(显示源文件)
func Log2(x float64) float64
Log2返回x的二进制对数。特殊情况与Log相同。
func Logb(显示源文件)
func Logb(x float64) float64
Logb返回x的二进制指数。
特殊情况是:
Logb(±Inf) = +Inf
Logb(0) = -Inf
Logb(NaN) = NaN
func Max(显示源文件)
func Max(x, y float64) float64
Max返回x或y中的较大值。
特殊情况是:
Max(x, +Inf) = Max(+Inf, x) = +Inf
Max(x, NaN) = Max(NaN, x) = NaN
Max(+0, ±0) = Max(±0, +0) = +0
Max(-0, -0) = -0
func Min(显示源文件)
func Min(x, y float64) float64
Min返回x或y中的较小者。
特殊情况是:
Min(x, -Inf) = Min(-Inf, x) = -Inf
Min(x, NaN) = Min(NaN, x) = NaN
Min(-0, ±0) = Min(±0, -0) = -0
func Mod(显示源文件)
func Mod(x, y float64) float64
Mod返回x / y的浮点余数。结果的幅度小于y,其符号与x的符号一致。
特殊情况是:
Mod(±Inf, y) = NaN
Mod(NaN, y) = NaN
Mod(x, 0) = NaN
Mod(x, ±Inf) = x
Mod(x, NaN) = NaN
func Modf(显示源文件)
func Modf(f float64) (int float64, frac float64)
Modf返回总和为f的整数和小数浮点数。这两个值都与f有相同的符号。
特殊情况是:
Modf(±Inf) = ±Inf, NaN
Modf(NaN) = NaN, NaN
func NaN(显示源文件)
func NaN() float64
NaN 返回 IEEE 754“not-a-number”值。
func Nextafter(显示源文件)
func Nextafter(x, y float64) (r float64)
Nextafter 将x后的下一个可表示的 float64 值返回y。
特殊情况是:
Nextafter(x, x) = x
Nextafter(NaN, y) = NaN
Nextafter(x, NaN) = NaN
func Nextafter32(显示源文件)
func Nextafter32(x, y float32) (r float32)
Nextafter32 返回x向y后的下一个可表示的 float32 值。
特殊情况是:
Nextafter32(x, x) = x
Nextafter32(NaN, y) = NaN
Nextafter32(x, NaN) = NaN
func Pow(显示源文件)
func Pow(x, y float64) float64
Pow 返回x**y,y 的基 x 指数。
特殊情况是(按顺序):
Pow(x, ±0) = 1 for any x
Pow(1, y) = 1 for any y
Pow(x, 1) = x for any x
Pow(NaN, y) = NaN
Pow(x, NaN) = NaN
Pow(±0, y) = ±Inf for y an odd integer < 0
Pow(±0, -Inf) = +Inf
Pow(±0, +Inf) = +0
Pow(±0, y) = +Inf for finite y < 0 and not an odd integer
Pow(±0, y) = ±0 for y an odd integer > 0
Pow(±0, y) = +0 for finite y > 0 and not an odd integer
Pow(-1, ±Inf) = 1
Pow(x, +Inf) = +Inf for |x| > 1
Pow(x, -Inf) = +0 for |x| > 1
Pow(x, +Inf) = +0 for |x| < 1
Pow(x, -Inf) = +Inf for |x| < 1
Pow(+Inf, y) = +Inf for y > 0
Pow(+Inf, y) = +0 for y < 0
Pow(-Inf, y) = Pow(-0, -y)
Pow(x, y) = NaN for finite x < 0 and finite non-integer y
func Pow10(显示源文件)
func Pow10(n int) float64
Pow10 返回 10**n,即n的基数为10的指数。
特殊情况是:
Pow10(n) = 0 for n < -323
Pow10(n) = +Inf for n > 308
func Remainder(显示源文件)
func Remainder(x, y float64) float64
余数返回 x/y 的 IEEE 754 浮点余数。
特殊情况是:
Remainder(±Inf, y) = NaN
Remainder(NaN, y) = NaN
Remainder(x, 0) = NaN
Remainder(x, ±Inf) = x
Remainder(x, NaN) = NaN
func Signbit(显示源文件)
func Signbit(x float64) bool
如果x是负值或负值,则 Signbit 返回 true。
func Sin(显示源文件)
func Sin(x float64) float64
Sin 返回弧度参数x的正弦值。
特殊情况是:
Sin(±0) = ±0
Sin(±Inf) = NaN
Sin(NaN) = NaN
func Sincos(显示源文件)
func Sincos(x float64) (sin, cos float64)
Sincos 返回Sin(x),Cos(x)。
特殊情况是:
Sincos(±0) = ±0, 1
Sincos(±Inf) = NaN, NaN
Sincos(NaN) = NaN, NaN
func Sinh(显示源文件)
func Sinh(x float64) float64
Sinh 返回x的双曲正弦。
特殊情况是:
Sinh(±0) = ±0
Sinh(±Inf) = ±Inf
Sinh(NaN) = NaN
func Sqrt(显示源文件)
func Sqrt(x float64) float64
Sqrt 返回x的平方根。
特殊情况是:
Sqrt(+Inf) = +Inf
Sqrt(±0) = ±0
Sqrt(x < 0) = NaN
Sqrt(NaN) = NaN
示例
package main
import (
"fmt"
"math"
)
func main() {
const (
a = 3
b = 4
)
c := math.Sqrt(a*a + b*b)
fmt.Printf("%.1f", c)
}
func Tan(显示源文件)
func Tan(x float64) float64
Tan 返回弧度参数x的切线。
特殊情况是:
Tan(±0) = ±0
Tan(±Inf) = NaN
Tan(NaN) = NaN
func Tanh(显示源文件)
func Tanh(x float64) float64
Tanh 返回x的双曲正切。
特殊情况是:
Tanh(±0) = ±0
Tanh(±Inf) = ±1
Tanh(NaN) = NaN
func Trunc(显示源文件)
func Trunc(x float64) float64
Trunc 返回x的整数值。
特殊情况是:
Trunc(±0) = ±0
Trunc(±Inf) = ±Inf
Trunc(NaN) = NaN
func Y0(显示源文件)
func Y0(x float64) float64
Y0 返回第二类的零阶 Bessel 函数。
特殊情况是:
Y0(+Inf) = 0
Y0(0) = -Inf
Y0(x < 0) = NaN
Y0(NaN) = NaN
func Y1(显示源文件)
func Y1(x float64) float64
Y1返回第二类的一阶贝塞尔函数。
特殊情况是:
Y1(+Inf) = 0
Y1(0) = -Inf
Y1(x < 0) = NaN
Y1(NaN) = NaN
func Yn(显示源文件)
func Yn(n int, x float64) float64
Yn 返回第二类的n阶 Bessel 函数。
特殊情况是:
Yn(n, +Inf) = 0
Yn(n ≥ 0, 0) = -Inf
Yn(n < 0, 0) = +Inf if n is odd, -Inf if n is even
Yn(n, x < 0) = NaN
Yn(n, NaN) = NaN
子目录
名称 | 概述 |
---|---|
big | 包大实现了任意精度算术(big numbers)。 |
bits | 封装位为预先声明的无符号整数类型实现位计数和操作函数。 |
complx | Package cmplx为复数提供基本的常量和数学函数。 |
rand | 包rand执行伪随机数生成器。 |