This commit is contained in:
Ingy döt Net 2013-10-27 22:24:23 +00:00
parent 6f050a029e
commit 776bba907c
3887 changed files with 59894 additions and 7280 deletions

View file

@ -0,0 +1 @@
MOVE FUNCTION FACTORIAL(num) TO result

View file

@ -0,0 +1,20 @@
IDENTIFICATION DIVISION.
FUNCTION-ID. factorial.
DATA DIVISION.
LOCAL-STORAGE SECTION.
01 i PIC 9(10).
LINKAGE SECTION.
01 n PIC 9(10).
01 ret PIC 9(10).
PROCEDURE DIVISION USING BY VALUE n RETURNING ret.
MOVE 1 TO ret
PERFORM VARYING i FROM 2 BY 1 UNTIL n < i
MULTIPLY i BY ret
END-PERFORM
GOBACK
.

View file

@ -0,0 +1,21 @@
IDENTIFICATION DIVISION.
FUNCTION-ID. factorial.
DATA DIVISION.
LOCAL-STORAGE SECTION.
01 prev-n PIC 9(10).
LINKAGE SECTION.
01 n PIC 9(10).
01 ret PIC 9(10).
PROCEDURE DIVISION USING BY VALUE n RETURNING ret.
IF n = 0
MOVE 1 TO ret
ELSE
SUBTRACT 1 FROM n GIVING prev-n
MULTIPLY n BY fac(prev-n) GIVING ret
END-IF
GOBACK
.