Julia - 算术基本函数
符号函数和绝对值函数abs(x) 函数求 x 的绝对值(幅值) julia> abs(3) 3 julia> abs(-3) 3 abs2(x) 函数求 x 的绝对值(幅值)的平方 julia> abs2(3) 9 julia> abs2(-3) 9 sign(x) 函数求 x 的正负号,返回 -1,0,+1 julia> sign(3) 1 julia> sign(-3) -1 julia> sign(0) 0 signbit(x) 判断是否有符号位,返回 Bool 值 julia> signbit(36) false julia> signbit(-36) true copysign(x,y) 返回一个数,这个数具有 x 的值,y 的符号位 julia> copysign(-3,-36) -3 julia> copysign(-3,36) 3 julia> copysign(3,-36) -3 ?flipsign(x,y) 返回一个数,这个数具有 x 的值,x*y 的值的符号位 julia> flipsign(3,2) 3 julia> flipsign(3,-2) -3 julia> flipsign(-3,2) -3 julia> flipsign(-3,-2) 3 乘方,对数和开方sqrt(x) 求 x 的平方根 julia> sqrt(9) 3.0 cbrt(x) 求 x 的立方根 julia> cbrt(27) 3.0 julia> cbrt(-27) -3.0 hypot(x,y) 为误差较小的 sqrt(x^2 + y^2) julia> sqrt(3^2 + 5^2) 5.830951894845301 julia> hypot(3,5) 5.8309518948453 exp(x) 计算自然指数 e 的 x 次幂 julia> exp(2) 7.38905609893065 julia> exp(1) 2.718281828459045 log(x) 计算 x 的对数 julia> log(16) 2.772588722239781 log(x,y) 求以 x 为底 y 的对数 julia> log(3,81) 4.0 log2(x) 求以 2 为底 x 的对数 julia> log2(16) 4.0 log10(x) 求以 10 为底 x 的对数 julia> log10(100) 2.0 log1p(x) 当 x 接近 0 时,精确计算 log(1+x) julia> log1p(0.01) 0.009950330853168083 exponent(x) 求 x 的二进制指数 julia> exponent(0.2) -3 significand(x) 求浮点数 x 的二进制有效数(a.k.a. 尾数) julia> significand(0.2) 1.6 除法函数div(x,y) 截断取整除法,x 除以 y,商向 0 舍入 julia> div(9,3) 3 julia> div(10,3) 3 fld(x,y) 为向下取整除法,x 除以 y,商向 -Inf 舍入 julia> 16.5 / 5 3.3 julia> fld(16.5,5) 3.0 julia> 18.5 / 5 3.7 julia> fld(18.5,5) 3.0 cld(x,y) 为向上取整除法,x 除以 y,商向 +Inf 舍入 julia> 16.5 / 5 3.3 julia> cld(16.5,5) 4.0 julia> 18.5 / 5 3.7 julia> cld(18.5,5) 4.0 rem(x,y) 为除法的余数,满足 x == div(x,y)*y + rem(x,y),与 x 同号 julia> rem(10,3) 1 julia> rem(9,3) 0 julia> rem(10.12,3) 1.1199999999999992 mod(x,y) 为取模余数,满足 x == fld(x,y)*y + mod(x,y),与 y 同号 julia> mod(16.5,5) 1.5 julia> rem(16.5,5) 1.5 mod1(x,y) 为偏移 1 的mod,返回 r∈(0,y] 其中 y>0 或者 r∈[y,0) 其中 y<0,其中 mod(r,y) == mod(x,y) julia> mod1(8,4) 4 julia> mod1(-8,4) 4 mod2pi(x) 对 2pi 取模余数,0 <= mod2pi(x) < 2pi julia> mod2pi(9*pi/4) 0.7853981633974481 gcd(x,y...) 求 x,y,... 的最大公约数,与 x 同号 julia> gcd(6,9,27) 3 julia> gcd(6,-9,27) 3 lcm(x,... 的最小公倍数,与 x 同号 julia> lcm(2,3,4) 12 julia> lcm(2,-4) 12 divrem(x,y) 返回 (div(x,y),rem(x,y)),即为商和余数 julia> divrem(10,3) (3,1) fldmod(x,y) 返回 (fld(x,mod(x,y)) julia> fldmod(16.5,5) (3.0,1.5) 舍入函数round(x) 把 x 四舍五入到最近的整数,返回 x 的类型 julia> round(3.3) 3.0 julia> round(3.7) 4.0 round(T,x) 把 x 四舍五入到最近的整数,返回 T 类型 julia> round(Int,3.7) 4 floor(x) 把 x 向 -Inf 取整,返回 x 的类型 julia> floor(3.3) 3.0 julia> floor(3.7) 3.0 floor(T,x) 把 x 向 -Inf 取整,返回 T 类型 julia> floor(Int,3.7) 3 ceil(x)?? ?把 x 向 +Inf 取整,返回 x 的类型 julia> ceil(3.3) 4.0 julia> ceil(3.7) 4.0 ceil(T,x) 把 x 向 +Inf 取整,返回 T 类型 julia> ceil(Int,3.7) 4 trunc(x) 把 x 向 0 取整,返回 x 的类型 julia> trunc(3.1) 3.0 julia> trunc(-3.1) -3.0 trunc(T,x) 把 x 向 0 取整,返回 T 类型 julia> trunc(Int,-3.1) -3 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |