RosettaCodeData/Task/Ackermann-function/MAD/ackermann-function.mad

39 lines
1.0 KiB
Plaintext

NORMAL MODE IS INTEGER
DIMENSION LIST(3000)
SET LIST TO LIST
INTERNAL FUNCTION(DUMMY)
ENTRY TO ACKH.
LOOP WHENEVER M.E.0
FUNCTION RETURN N+1
OR WHENEVER N.E.0
M=M-1
N=1
TRANSFER TO LOOP
OTHERWISE
SAVE RETURN
SAVE DATA M
N=N-1
N=ACKH.(0)
RESTORE DATA M
RESTORE RETURN
M=M-1
TRANSFER TO LOOP
END OF CONDITIONAL
ERROR RETURN
END OF FUNCTION
INTERNAL FUNCTION(MM,NN)
ENTRY TO ACK.
M=MM
N=NN
FUNCTION RETURN ACKH.(0)
END OF FUNCTION
THROUGH SHOW, FOR I=0, 1, I.G.3
THROUGH SHOW, FOR J=0, 1, J.G.8
SHOW PRINT FORMAT ACKF,I,J,ACK.(I,J)
VECTOR VALUES ACKF = $4HACK(,I1,1H,,I1,4H) = ,I4*$
END OF PROGRAM