Recursive perform statement sample

This source is the example of Recursive Perform Statement.

This source is an example of Recursive Perform Statement. This is not a useful source for your project, but for

thosewho studies Recursive Perform Statements, this can be a useful example of ABAP Recursive Perform Statement.


*Writen By Hakchin.
*We can get the factorial of number 5.
*5*4*3*2*1=120

DATA fa TYPE p VALUE 5.
DATA result TYPE p.
BREAK-POINT.
PERFORM factorial USING    fa
                  CHANGING result.
WRITE:/ fa, / result.
*&---------------------------------------------------------------------*
*&      Form  factorial
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      -->P_FA  text
*      <--P_RESULT  text
*----------------------------------------------------------------------*
FORM factorial USING    value(p_fa)
               CHANGING value(p_result).
  DATA l_fa TYPE p.
  p_result = l_fa = p_fa.
  p_fa = p_fa - 1.
  IF p_fa > 1.
    PERFORM factorial USING    p_fa
                      CHANGING p_result.
  ENDIF.
  IF p_fa = 1.
    p_result = p_result * p_fa.
  ELSE.
    p_result = p_result * l_fa.
  ENDIF.
ENDFORM.                    " factorial


Output:
              5
            120
This was first published in April 2002

Dig deeper on SAP ABAP

Pro+

Features

Enjoy the benefits of Pro+ membership, learn more and join.

0 comments

Oldest 

Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to:

SearchManufacturingERP

SearchOracle

SearchDataManagement

SearchAWS

SearchBusinessAnalytics

SearchCRM

SearchContentManagement

SearchFinancialApplications

Close