Wednesday, December 13, 2017

REDUCE Operator Example

This is my first practice code of REDUCE operator.

"sum of squares of 1 to 4 using reduction operator

DATA(lv_result) = REDUCE i( INIT ii TYPE i

                            FOR k = 1 THEN k + 1 UNTIL k > 4

                            LET kk = k * k IN

                            NEXT ii = ii + kk ).

cl_demo_output=>display( lv_result ).

"traditional way to achieve same result

DATA ii2 TYPE i.

DATA(k2) = 1.

DO.

  DATA(kk2) = k2 * k2.

  ii2 = ii2 + kk2.



  k2 = k2 + 1.

  IF k2 > 4.

    EXIT.

  ENDIF.

ENDDO.

lv_result = ii2.

cl_demo_output=>display( lv_result ).

No comments: