您的位置:首页 > 其它

ABAP DO循环 和preform 递归

2012-11-23 11:23 609 查看
1.DO循环:

IF LV_MONAT < 12.

DO LV_MONAT TIMES VARYING LV_VARY FROM LV_Z-HSL01 NEXT

LV_Z-HSL02.

LV_BALA_DATA-BE_AMOUNT = LV_BALA_DATA-BE_AMOUNT + LV_VARY.

ENDDO.

假设lv_monat = 7, 循环次,从一月开始,二月,三月、、、、 到7月,

期初余额LV_BALA_DATA-BE_AMOUNT= 累加到7月。

2.preform里套preform.

在perform时perform自己是一种递归的行为, 我不知道你懂不懂递归

设计递归算法, 你要明确, 必须要有退出的机制4.

你要实现的功能是不是: 假设input = 3 result = 1 * 2 * 3?5.如果4是的话,代码:

DATA: input TYPE i,

init TYPE i,

result TYPE i.

input = 5

.init = 1.

PERFORM multiply USING input init result.

WRITE: result.

FORM multiply USING value(input) TYPE i

value(init) TYPE i

result TYPE i.

IF init = 1.

result = 1.

ENDIF.

result = result * init.

init = init + 1.

IF init <= input.

PERFORM multiply USING input init result.

ENDIF.

ENDFORM.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: