RosettaCodeData/Task/Ackermann-function/Comal/ackermann-function.comal

18 lines
354 B
Plaintext

0010 //
0020 // Ackermann function
0030 //
0040 FUNC a#(m#,n#)
0050 IF m#=0 THEN RETURN n#+1
0060 IF n#=0 THEN RETURN a#(m#-1,1)
0070 RETURN a#(m#-1,a#(m#,n#-1))
0080 ENDFUNC a#
0090 //
0100 // Print table of Ackermann values
0110 //
0120 ZONE 5
0130 FOR m#:=0 TO 3 DO
0140 FOR n#:=0 TO 4 DO PRINT a#(m#,n#),
0150 PRINT
0160 ENDFOR m#
0170 END