diff --git a/exercises/practice/armstrong-numbers/.meta/proof.ci.cob b/exercises/practice/armstrong-numbers/.meta/proof.ci.cob index 8525d531..cdd3da0d 100644 --- a/exercises/practice/armstrong-numbers/.meta/proof.ci.cob +++ b/exercises/practice/armstrong-numbers/.meta/proof.ci.cob @@ -13,8 +13,8 @@ PROCEDURE DIVISION. ARMSTRONG-NUMBERS. - MOVE 0 TO WS-ARMSTRONG - PERFORM VARYING WS-INDEX FROM 1 BY 1 + INITIALIZE WS-ARMSTRONG. + PERFORM VARYING WS-INDEX FROM 1 BY 1 UNTIL WS-INDEX > LENGTH(TRIM(WS-NUMBER)) IF WS-NUMBER (WS-INDEX:1) EQUAL 0 EXIT PERFORM CYCLE @@ -22,12 +22,13 @@ MOVE WS-NUMBER (WS-INDEX:1) TO WS-DIGIT COMPUTE WS-ARMSTRONG = WS-ARMSTRONG + WS-DIGIT ** LENGTH(TRIM(WS-NUMBER)) - END-PERFORM. + END-PERFORM. - IF FUNCTION NUMVAL ( WS-NUMBER ) IS EQUAL TO WS-ARMSTRONG + IF FUNCTION NUMVAL ( WS-NUMBER ) IS EQUAL TO WS-ARMSTRONG MOVE 1 TO WS-RESULT - ELSE + ELSE MOVE 0 TO WS-RESULT + END-IF. - DISPLAY WS-ARMSTRONG. - DISPLAY WS-NUMBER. + DISPLAY WS-ARMSTRONG. + DISPLAY WS-NUMBER.