**************************************
**************** Abs *****************
**************************************
【名称】 Abs
【类别】 数学函数
【原形】 Abs(number)
【参数】 必选的。Number参数是一个任何有效的数值型表达式
【返回值】 同 number 的类型
【异常/错误】 无
【描述】
返回参数number 的绝对值。一个数的绝对值是将正负号去掉以后的值。例如,ABS(-1) 和 ABS(1) 都返回 1。Abs(5.2)=5.2,Abs(-5)=5
【示例】
Dim MyNumber
MyNumber = Abs(50.3) \' 返回 50.3。
MyNumber = Abs(-50.3) \' 返回 50.3。
【备注】
如果 number 包含 Null,则返回 Null,如果 number 是未初始化的变量,则返回 0。

**************************************
**************** Atn *****************
**************************************
【名称】 Atn
【类别】 数学函数
【原形】 Atn(number)
【参数】 必选的,number 参数是一个 Double或任何有效的数值表达式。
【返回值】 Double类型
【异常/错误】 无
【描述】 返回参数number 的反正切值。
【示例】
Dim pi
pi = 4 * Atn(1) \' 计算圆周率。
【备注】
Atn 函数的参数值 (number) 为直角三角形两边的比值并返回以弧度为单位的角。这个比值是角的对边长度除以角的邻边长度之商。值的范围在 -pi/2 和 pi/2 弧度之间。为了将角度转换为弧度,请将角度乘以 pi/180。为了将弧度转换为角度,请将弧度乘以 180/pi。
注意:Atn 是 Tan 的反三角函数,Tan 的参数值为角度,返回直角三角形的两条边的比值。不要将 Atn 和余切函数混淆,余切函数值是正切函数值的倒数,cotangent = (1/tangent)。

**************************************
**************** Cos *****************
**************************************
【名称】 Cos
【类别】 数学函数
【原形】 Cos(number)
【参数】 必选的,number 参数是 Double 或任何有效的数值表达式,表示一个以弧度为单位的角。
【返回值】 Double类型
【异常/错误】 无
【描述】 返回一个指定一个角的余弦值。
【示例】
Dim MyAngle, MySecant
MyAngle = 1.3 \' 定义角度(以“弧度”为单位)。
MySecant = 1 / Cos(MyAngle) \' 利用余弦计算正割(sec())。
【备注】
Cos 函数的参数为一个角,并返回直角三角形两边的比值。该比值为角的邻边长度除以斜边长度之商。结果的取值范围在 -1 到 1 之间。
为了将角度转换成弧度,请将角度乘以 pi/180。为了将弧度转换成角度,请将弧度乘以 180/pi。

**************************************
**************** Exp *****************
**************************************
【名称】 Exp
【类别】 数学函数
【原形】 Exp(number)
【参数】 必选的,number 参数是一个 Double 或任何有效的数值表达式
【返回值】 Double类型
【异常/错误】 无
【描述】 返回一个指定 e(自然对数的底,e 的值为2.71828)的某次方。
【示例】
\' 本示例使用 Exp 函数计算 e的某次方。
Dim MyAngle, MyHSin
\' 定义角度(以“弧度”为单位)。
MyAngle = 1.3
\' 计算双曲正弦函数值(sin())。
MyHSin = (Exp(MyAngle) - Exp(-1 * MyAngle)) / 2
【备注】
如果 number 的值超过 709.782712893,则会导致错误发生。常数 e 的值大约是 2.718282。注意:Exp 函数的作用和 Log 的作用互补,所以有时也称做反对数。

**************************************
**************** Fix *****************
**************************************
【名称】 Fix
【类别】 数学函数
【原形】 Fix (number)
【参数】 必选的,number 参数是一个 Double 或任何有效的数值表达式
【返回值】 Integer 类型
【异常/错误】 无
【描述】 将number的小数部分截去,求其整数部分,例如:Fix(3.8)=3,Fix(-3.8)=-3。
【示例】
Dim MyNumber
MyNumber = Fix(99.2) \' 返回 99。
MyNumber = Fix(-99.8) \' 返回 -99。
MyNumber = Fix(-99.2) \' 返回 -99。
【备注】
如果 number 包含 Null,则返回 Null。

**************************************
**************** Int *****************
**************************************
【名称】 Int
【类别】 数学函数
【原形】 Int(number)
【参数】 必选的,number 参数是一个 Double 或任何有效的数值表达式
【返回值】 Integer 类型
【异常/错误】 无
【描述】 求不大于number 的最大整数,Int(3.8)=3,Int(-3.8)=-4。
【示例】
Dim MyNumber
MyNumber = Int(99.8) \' 返回 99。
MyNumber = Int(-99.8) \' 返回 -100。
MyNumber = Int(-99.2) \' 返回 -100。
【备注】
如果 number 包含 Null,则返回 Null。Int 和 Fix 都会删除 number 的小数部份而返回剩下的整数。Int 和 Fix 的不同之处在于,如果 number 为负数,则 Int 返回小于或等于 number 的第一个负整数,而 Fix 则会返回大于或等于 number 的第一个负整数。例如,Int 将 -8.4 转换成 -9,而 Fix 将 -8.4 转换成 -8。

**************************************
**************** Log *****************
**************************************
【名称】 Log
【类别】 数学函数
【原形】 Log(number)
【参数】 必选的,number 参数是一个 Double 或任何有效的大于 0 的数值表达式
【返回值】 Double类型
【异常/错误】 无
【描述】 返回指定的number参数的自然对数值。
【示例】
本示例使用 Log 函数得到某数的自然对数值。
Dim MyAngle, MyLog
\' 定义角度(以“弧度”为单位)。
MyAngle = 1.3
\' 计算反双曲正弦函数值(inverse sinh())。
MyLog = Log(MyAngle + Sqr(MyAngle * MyAngle + 1))
【备注】
自然对数是以 e 为底的对数。常数 e 的值大约是 2.718282。
如下所示,将 x 的自然对数值除以 n 的自然对数值,就可以对任意底 n 来计算数值 x 的对数值:
Logn(x) = Log(x) / Log(n)
下面的示例说明如何编写一个函数来求以 10 为底的对数值:
Static Function Log10(X)
Log10 = Log(X) / Log(10#)
End Function

**************************************
**************** Rnd *****************
**************************************
【名称】 Rnd
【类别】 数学函数
【原形】 Rnd[(number)]
【参数】 必选的,number 参数是 Single 或任何有效的数值表达式。
【返回值】
如果 number 的值是 Rnd 生成
小于 0 每次都使用 number 作为随机数种子得到的相同结果。
大于 0 序列中的下一个随机数。
等于 0 最近生成的数。
省略 序列中的下一个随机数。
【异常/错误】 无
【描述】
返回一个包含随机数值的 Single。Rnd 函数返回小于 1 但大于或等于 0 的值。number 的值决定了 Rnd 生成随机数的方式。
对最初给定的种子都会生成相同的数列,因为每一次调用 Rnd 函数都用数列中的前一个数作为下一个数的种子。
在调用 Rnd 之前,先使用无参数的 Randomize 语句初始化随机数生成器,该生成器具有根据系统计时器得到的种子。
为了生成某个范围内的随机整数,可使用以下公式:
Int((upperbound - lowerbound + 1) * Rnd + lowerbound)
这里,upperbound 是随机数范围的上限,而 lowerbound 则是随机数范围的下限。
注意 若想得到重复的随机数序列,在使用具有数值参数的 Randomize 之前直接调用具有负参数值的 Rnd。使用具有同样 number 值的 Randomize 是不会得到重复的随机数序列的。
【示例】
本示例使用 Rnd 函数随机生成一个 1 到 6 的随机整数。
Dim MyValue
MyValue = Int((6 * Rnd) + 1) \' 生成 1 到 6 之间的随机数值。
【备注】 无

**************************************
**************** Sgn *****************
**************************************
【名称】 Sgn
【类别】 数学函数
【原形】 Sgn(number)
【参数】 必选的,number 参数是一个 任何有效的数值表达式
【返回值】
如果 number 为 Sgn 返回
大于 0 1
等于 0 0
小于 0 -1
【异常/错误】 无
【描述】 返回一个 Variant (Integer),指出参数的正负号。number 参数的符号决定了 Sgn 函数的返回值。
【示例】
本示例使用 Sgn 函数来判断某数的正负号。
Dim MyVar1, MyVar2, MyVar3, MySign
MyVar1 = 12: MyVar2 = -2.4: MyVar3 = 0
MySign = Sgn(MyVar1) \' 返回 1。
MySign = Sgn(MyVar2) \' 返回 -1。
MySign = Sgn(MyVar3) \' 返回 0。
【备注】 无

**************************************
**************** Sin *****************
**************************************
【名称】 Sin
【类别】 数学函数
【原形】 Sin(number)
【参数】 必选的,number 参数是一个 Double 或任何有效的数值表达式,表示一个以弧度为单位的角。
【返回值】 返回一个Double,指定参数的 sine(正弦)值。
【异常/错误】 无
【描述】
Sin 函数取一角度为参数值,并返回角的对边长度除以斜边长度的比值。
结果的取值范围在 -1 到 1 之间。
为了将角度转换为弧度,请将角度乘以 pi /180。为了将弧度转换为角度,请将弧度乘以 180/pi。
【示例】
本示例使用 Sin 函数来求出一个角的正弦值(sin())。
Dim MyAngle, MyCosecant
MyAngle = 1.3 \' 定义角度(以“弧度”为单位)。
MyCosecant = 1 / Sin(MyAngle) \' 利用正弦来计算余割(csc())。
【备注】 无

**************************************
**************** Sqr *****************
**************************************
【名称】 Sqr
【类别】 数学函数
【原形】 Sqr(number)
【参数】 必选的,number 参数是一个Double 或任何有效的大于或等于 0 的数值表达式。
【返回值】 返回一个 Double。
【异常/错误】 无
【描述】 返回指定参数number 的平方根
【示例】
本示例使用 Sqr 函数来计算某数的平方根。
Dim MySqr
MySqr = Sqr(4) \' 返回 2。
MySqr = Sqr(23) \' 返回 4.79583152331272。
MySqr = Sqr(0) \' 返回 0。
MySqr = Sqr(-4) \' 生成一个运行时错误(负数不能用此函数开平方根)。
【备注】 无

**************************************
**************** Tan *****************
**************************************
【名称】 Tan
【类别】 数学函数
【原形】 Tan(number)
【参数】 必选的,number 参数是一个Double 或任何有效的数值表达式,表示一个以弧度为单位的角度。
【返回值】 返回一个 Double。
【异常/错误】 无
【描述】
返回指定参数number 的正切值。Tan 取一角度为参数值,并返回直角的两条邻边的比值。该比值是角的对边长度除以角的邻边长度的商。
为了将角度转换为弧度,请将角度乘以 pi/180/180。为了将弧度转换为角度,请将弧度乘以 180/pi。
【示例】
本示例使用 Tan 函数来求出一个角的正切(tan())。
Dim MyAngle, MyCotangent
MyAngle = 1.3 \' 定义角度(以“弧度”为单位)。
MyCotangent = 1 / Tan(MyAngle) \' 利用正切来计算余切(cot())。
【备注】
以下为非基本数学函数的列表,皆可由基本数学函数导出:
函数
由基本函数导出之公式
Secant(正割)
Sec(X) = 1 / Cos(X)
Cosecant(余割)
Cosec(X) = 1 / Sin(X)
Cotangent(余切)
Cotan(X) = 1 / Tan(X)
Inverse Sine (反正弦)
Arcsin(X) = Atn(X / Sqr(-X * X + 1))
Inverse Cosine (反余弦)
Arccos(X) = Atn(-X / Sqr(-X * X + 1)) + 2 * Atn(1)
Inverse Secant (反正割)
Arcsec(X) = Atn(X / Sqr(X * X - 1)) + Sgn((X) - 1) * (2 * Atn(1))
Inverse Cosecant (反余割)
Arccosec(X) = Atn(X / Sqr(X * X - 1)) + (Sgn(X) - 1) * (2 * Atn(1))
Inverse Cotangent(反余切)
Arccotan(X) = Atn(X) + 2 * Atn(1)
Hyperbolic Sine (双曲正弦)
HSin(X) = (Exp(X) - Exp(-X)) / 2
Hyperbolic Cosine (双曲余弦)
HCos(X) = (Exp(X) + Exp(-X)) / 2
Hyperbolic Tangent (双曲正切)
HTan(X) = (Exp(X) - Exp(-X)) / (Exp(X) + Exp(-X))
Hyperbolic Secant (双曲正割)
HSec(X) = 2 / (Exp(X) + Exp(-X))
Hyperbolic Cosecant(双曲余割)
HCosec(X) = 2 / (Exp(X) - Exp(-X))
Hyperbolic Cotangent(双曲余切)
HCotan(X) = (Exp(X) + Exp(-X)) / (Exp(X) - Exp(-X))
Inverse Hyperbolic Sine(反双曲正弦)
HArcsin(X) = Log(X + Sqr(X * X + 1))
Inverse Hyperbolic Cosine(反双曲余弦)
HArccos(X) = Log(X + Sqr(X * X - 1))
Inverse Hyperbolic Tangent(反双曲正切)
HArctan(X) = Log((1 + X) / (1 - X)) / 2
Inverse Hyperbolic Secant(反双曲正割)
HArcsec(X) = Log((Sqr(-X * X + 1) + 1) / X)
Inverse Hyperbolic Cosecant
HArccosec(X) = Log((Sgn(X) * Sqr(X * X + 1) + 1) / X)
Inverse Hyperbolic Cotangent (反双曲余切)
HArccotan(X) = Log((X + 1) / (X - 1)) / 2
以 N 为底的对数
LogN(X) = Log(X) / Log(N)