这些函数可以让您完成数学运算。
针对 UNIX、Windows NT 和 OS/2 的性能提示:为了优化算术 函数的性能,把 Net.Data 初始化文件或宏文件中的 DTW_OPTIMIZE_MATH 配置值设置成 YES 即 可。
请参阅 Net.Data 管理与程序设计指南中的配置变量章节,学习如何 配置此变量。
NLS 针对数学函数的考虑: Net.Data 根据运行 Net.Data 的 Web 服务器上指定的区域设置在数值中显示小数点。例如,如果 Web 服务器上指定小数点为一个逗号 (,),则 Net.Data 使用逗号将十进制数据格式化。Net.Data 使用以下设置确定哪个字符用于指定 小数点:
对于数学计算,有下列函数可用:
AIX | HP-UX | OS/2 | OS/390 | OS/400 | SCO | SUN | Win NT |
X | X | X | X | X | X | X | X |
目的
将两个参数的值相加。
格式
@DTW_ADD(number1, number2, precision, result)
@DTW_rADD(number1, number2, precision)
值
数据类型 | 参数 | 用法 | 说明 |
---|---|---|---|
浮点数 | number1 | IN | 一个表示数值的变量或文字串。 |
浮点数 | number2 | IN | 一个表示数值的变量或文字串。 |
整数 | precision | IN | 一个表示正整数的变量或文字串,此整数指定了 结果的精确度。 缺省值是 9。 |
浮点数 | result | OUT | 包含 number1 与 number2 之和的变量。 |
例
例 1:
@DTW_ADD(NUM1, NUM2, "2", result)
例 2:
@DTW_rADD("12", NUM2, "5")
AIX | HP-UX | OS/2 | OS/390 | OS/400 | SCO | SUN | Win NT |
X | X | X | X | X | X | X | X |
目的
第一个参数的值除以第二个参数的值。
格式
@DTW_DIVIDE(number1, number2, precision, result)
@DTW_rDIVIDE(number1, number2, precision)
值
数据类型 | 参数 | 用法 | 说明 |
---|---|---|---|
浮点数 | number1 | IN | 一个表示数值的变量或文字串。 |
浮点数 | number2 | IN | 一个表示数值的变量或文字串。 |
整数 | precision | IN | 一个表示正整数的变量或文字串,此整数指定了 结果的精确度。 缺省值是 9。 |
浮点数 | result | OUT | 包含 number1 除以 number2 的结果的变量。 |
例
例 1:
@DTW_DIVIDE("8.0", NUM2, result)
例 2:
@DTW_rDIVIDE("1", NUM2, "5")
例 3:
@DTW_rDIVIDE(NUM1, "2", "5")
AIX | HP-UX | OS/2 | OS/390 | OS/400 | SCO | SUN | Win NT |
X | X | X | X | X | X | X | X |
目的
第一个参数除以第二个参数,并返回余数。 如果余数非零,则余数的符号与第一个参数相同。
格式
@DTW_DIVREM(number1, number2, precision, result)
@DTW_rDIVREM(number1, number2, precision)
值
数据类型 | 参数 | 用法 | 说明 |
---|---|---|---|
浮点数 | number1 | IN | 一个表示数值的变量或文字串。 |
浮点数 | number2 | IN | 一个表示数值的变量或文字串。 |
整数 | precision | IN | 一个表示正整数的变量或文字串,此整数指定了 结果的精确度。 缺省值是 9。 |
浮点数 | result | OUT | 包含 number1 除以 number2 的余数的变量。 |
例
例 1:
@DTW_DIVREM(NUM1, NUM2, result)
例 2:
@DTW_rDIVREM("10", NUM2)
例 3:
@DTW_rDIVREM("3.6","1.3")
例 4:
@DTW_rDIVREM("-10","3")
AIX | HP-UX | OS/2 | OS/390 | OS/400 | SCO | SUN | Win NT |
X | X | X | X | X | X | X | X |
目的
定制一个数的格式。如果只指定 number 参数,则其格式化结果与 执行 @DTW_rADD(number,"0") 语句相同。如果指定了其它某个选项,那么将按照以下规则来格式化 number:
格式
@DTW_FORMAT(number, before, after, expp, expt, precision, result)
@DTW_rFORMAT(number, before, after, expp, expt, precision)
值
数据类型 | 参数 | 用法 | 说明 |
---|---|---|---|
浮点数 | number | IN | 一个表示数值的变量或文字串。 |
整数 | before | IN | 一个表示正整数的变量或文字串。这是一个可选参数。 必须输入 一个空串(""),以使用另外的参数。 |
整数 | after | IN | 一个表示正整数的变量或文字串。这是一个可选参数。 必须输入 一个空串(""),以指定另外的参数。 |
整数 | expp | IN | 一个表示正整数的变量或文字串。必须指定一个空串 ("")来指定附加的参数。 |
整数 | expt | IN | 一个表示正整数的变量或文字串。必须输入 一个空串(""),以指定另外的参数。 |
整数 | precision | IN | 一个表示正整数的变量或文字串,此整数指定了 结果的精确度。 缺省值是 9。 |
浮点数 | result | OUT | 一个包含指定舍入和格式状态的数的变量。 |
例
例 1:
@DTW_FORMAT(NUM, BEFORE, result)
例 2:
@DTW_FORMAT("1.73", "4", "0", result)
例 3:
@DTW_FORMAT("1.73", "4", "3", result)
例 4:
@DTW_FORMAT(" - 12.73", "", "4", result)
例 5:
@DTW_FORMAT("12345.73", "", "", "2", "2", result)
例 6:
@DTW_FORMAT("1.234573", "", "3", "", "0", result)
例 7:
@DTW_rFORMAT(" - 12.73")
例 8:
@DTW_rFORMAT("0.000")
例 9:
@DTW_rFORMAT("12345.73","","","3","6")
例 10:
@DTW_rFORMAT("1234567e5","","3","0")
例 11:
@DTW_rFORMAT("12345.73","","3","","0")
AIX | HP-UX | OS/2 | OS/390 | OS/400 | SCO | SUN | Win NT |
X | X | X | X | X | X | X | X |
目的
第一个参数除以第二个参数,并返回结果的整数部分。
格式
@DTW_INTDIV(number1, number2, precision, result)
@DTW_rINTDIV(number1, number2, precision)
值
数据类型 | 参数 | 用法 | 说明 |
---|---|---|---|
浮点数 | number1 | IN | 一个表示数值的变量或文字串。 |
浮点数 | number2 | IN | 一个表示数值的变量或文字串。 |
整数 | precision | IN | 一个表示正整数的变量或文字串,此整数指定了 结果的精确度。 缺省值是 9。 |
浮点数 | result | OUT | 包含 number1 除以 number2 整数部分的 的变量。 |
例
例 1:
@DTW_INTDIV(NUM1, NUM2, result)
例 2:
@DTW_rINTDIV("2", NUM2)
AIX | HP-UX | OS/2 | OS/390 | OS/400 | SCO | SUN | Win NT |
X | X | X | X | X | X | X | X |
目的
两个参数相乘并返回结果。
格式
@DTW_MULTIPLY(number1, number2, precision, result)
@DTW_rMULTIPLY(number1, number2, precision)
值
数据类型 | 参数 | 用法 | 说明 |
---|---|---|---|
浮点数 | number1 | IN | 一个表示数值的变量或文字串。 |
浮点数 | number2 | IN | 一个表示数值的变量或文字串。 |
整数 | precision | IN | 一个表示正整数的变量或文字串,此整数指定了 结果的精确度。 缺省值是 9。 |
浮点数 | result | OUT | 包含 number1 和 number2 的乘积的变量。 |
例
例 1:
@DTW_MULTIPLY(NUM1, NUM2, result)
例 2:
@DTW_rMULTIPLY("0.9", NUM2)
AIX | HP-UX | OS/2 | OS/390 | OS/400 | SCO | SUN | Win NT |
X | X | X | X | X | X | X | X |
目的
计算第一个参数的第二个参数的次方,返回其结果。
格式
@DTW_POWER(number1, number2, precision, result)
@DTW_rPOWER(number1, number2, precision)
值
数据类型 | 参数 | 用法 | 说明 |
---|---|---|---|
浮点数 | number1 | IN | 一个表示数值的变量或文字串。 |
浮点数 | number2 | IN | 一个表示数值的变量或文字串。 |
整数 | precision | IN | 一个表示正整数的变量或文字串,此整数指定了 结果的精确度。 缺省值是 9。 |
浮点数 | result | OUT | 包含 number1 的 number2 次方的结果的 变量。 |
例
例 1:
@DTW_POWER(NUM1, NUM2, result)
例 2:
@DTW_rPOWER("1.7", NUM2, precision)
AIX | HP-UX | OS/2 | OS/390 | OS/400 | SCO | SUN | Win NT |
X | X | X | X | X | X | X | X |
目的
计算第一个参数的值减去第二个参数的值并返回结果。
格式
@DTW_SUBTRACT(number1, number2, precision, result)
@DTW_rSUBTRACT(number1, number2, precision)
值
数据类型 | 参数 | 用法 | 说明 |
---|---|---|---|
浮点数 | number1 | IN | 一个表示数值的变量或文字串。 |
浮点数 | number2 | IN | 一个表示数值的变量或文字串。 |
整数 | precision | IN | 一个表示正整数的变量或文字串,此整数指定了 结果的精确度。 缺省值是 9。 |
浮点数 | result | OUT | 包含 number1 和 number2 之差的变量。 |
例
例 1:
@DTW_SUBTRACT(NUM1, NUM2, comp) %IF(comp > "0") <P>$(NUM1) is larger than $(NUM2). %ENDIF
此例子说明了一种比较两个数值(Net.Data 中的字符串)大小的方法。
例 2:
@DTW_SUBTRACT(NUM1, NUM2, result)
例 3:
@DTW_rSUBTRACT("1.3", NUM2)