ABAP运算符
来源:互联网 发布:php curl culopt 编辑:程序博客网 时间:2024/05/16 16:10
基本算术运算
运算
用数学表达式的语句
用关键字的语句
加法
<p> = <n> + <m>.
ADD <n> TO <m>.
减法
<p> = <m> - <n>.
SUBTRACT <n> FROM <m>.
乘法
<p> = <m> * <n>.
MULTIPLY <m> BY <n>.
除法
<p> = <m> / <n>.
DIVIDE <m> BY <n>.
整除
<p> = <m> DIV <n>.
---
除法余数
<p> = <m> MOD <n>.
---
求幂
<p> = <m> ** <n>.
---
执行字段串的算术运算
类似于用 MOVE-CORRESPONDING 语句在字段串之间复制值,可以用以下关键字,执行字段串的算术运算:
ADD-CORRESPONDING
SUBTRACT-CORRESPONDING
MULTIPLY-CORRESPONDING
DIVIDE-CORRESPONDING
添加字段顺序除基本算术运算中所述的基本加法之外,ADD 语句有几个变体,用于添加字段顺序。例如:
语法
ADD <n1> THEN <n2> UNTIL <nz> GIVING <m>. "添加字段顺序并将结果赋给另一个字段
如果 <n1>、 <n2>、 ... 、 <nz> 是在内存中相同类型和长度的等距字段序列,则进行求和计算并将结果赋给 <m>
语法
ADD <n1> THEN <n2> UNTIL <nz> TO <m>. "添加字段顺序并将结果添加到另一个字段的内容中
该语句除了将字段总和添加到 <m> 的旧内容中之外,与上面语句的工作方式相同。
所有数值数据类型的函数
以下内部函数使用所有三种数值数据类型(F、I 和 P)作为参数。函数
结果
ABS
参数的绝对值。
SIGN
参数符号: 1 X > 0
SIGN( X) = 0 if X = 0
-1 X < 0
CEIL
不小于参数的最小整数值。
FLOOR
不大于参数的最大整数值。
TRUNC
参数的整数部分。
FRAC
参数的分数部分。
* / DIV MOD
DATA: pack2 TYPE p DECIMALS 4,
n TYPE f VALUE '+5.2',
m TYPE f VALUE '+1.1'.
pack2 = n / m.
WRITE pack2.
pack2 = n DIV m.
WRITE / pack2.
pack2 = n MOD m.
WRITE / pack2.
ULINE.
* MULTIPLY-CORRESPONDING
DATA: BEGIN OF rate,
usa TYPE f VALUE '0.6667',
frg TYPE f VALUE '1.0',
aut TYPE f VALUE '7.0',
END OF rate.
DATA: BEGIN OF money,
usa TYPE i VALUE 100,
frg TYPE i VALUE 200,
aut TYPE i VALUE 300,
END OF money.
MULTIPLY-CORRESPONDING money BY rate.
WRITE / money-usa.
WRITE / money-frg.
WRITE / money-aut.
ULINE.
* ADD ...
DATA: BEGIN OF series,
n1 TYPE i VALUE 10,
n2 TYPE i VALUE 20,
n3 TYPE i VALUE 30,
n4 TYPE i VALUE 40,
n5 TYPE i VALUE 50,
n6 TYPE i VALUE 60,
END OF series.
DATA sum TYPE i VALUE 100.
ADD series-n1 THEN series-n2 UNTIL series-n5 GIVING sum.
WRITE sum.
ADD series-n2 THEN series-n3 UNTIL series-n6 TO sum.
WRITE / sum.
* numeric datatypes
DATA n2 TYPE p DECIMALS 2.
DATA m2 TYPE p DECIMALS 2 VALUE '-5.55'.
n2 = ABS( m2 ). WRITE: / 'ABS: ', n2.
n2 = SIGN( m2 ). WRITE: / 'SIGN: ', n2.
n2 = CEIL( m2 ). WRITE: / 'CEIL: ', n2.
n2 = FLOOR( m2 ). WRITE: / 'FLOOR:', n2.
n2 = TRUNC( m2 ). WRITE: / 'TRUNC:', n2.
n2 = FRAC( m2 ). WRITE: / 'FRAC: ', n2.
ULINE.
* floating points
DATA: result TYPE f,
pi(10) TYPE c VALUE '3.14159265'.
result = COS( pi ).
WRITE result.
输出结果:
4.7273
4.0000
0.8000
67
200
2,100
150
350
ABS: 5.55
SIGN: 1.00-
CEIL: 5.00-
FLOOR: 6.00-
TRUNC: 5.00-
FRAC: 0.55-
-1.0000000000000000E+00
- ABAP运算符
- ABAP关系运算符
- ABAP 运算符
- ABAP运算符
- abap 算术运算函数
- ABAP幂运算
- ABAP算术运算函数
- ABAP中的动态运算函数
- abap开发变量定义和基本运算
- ABAP中的转义符 #
- ABAP
- ABAP
- abap
- ABAP
- ABAP 去掉日期分割符
- ABAP久违的操作符
- 运算和运算符
- abap CA CO CS等操作符
- 使cxgrid中某列下拉列表自动下拉
- UBL descriptor ti dm365 引导分析 RBL,UBLU-BOOT
- LINQ 多条件查询 where 条件组建
- PLSQL Developer设置及快捷键设置
- openAL跨平台开发,解码方式 wav & ogg
- ABAP运算符
- 纯静态页面实现301跳转
- silverlight使用DataGrid实现类似Treelistview效果
- 找出100~1000内的所有水仙花数
- Unix script 4 - variables part I
- 按照SMART原则,指定计划
- IOCP的原理
- Makefile 中的几种 等号
- Sue 的小球 ball