25 lines
642 B
Plaintext
25 lines
642 B
Plaintext
100 DIM R%(2900),M(2900),N(2900)
|
|
110 FOR M = 0 TO 3
|
|
120 FOR N = 0 TO 4
|
|
130 GOSUB 200"ACKERMANN
|
|
140 PRINT "ACK("M","N") = "ACK
|
|
150 NEXT N, M
|
|
160 END
|
|
|
|
200 M(SP) = M
|
|
210 N(SP) = N
|
|
|
|
REM A(M - 1, A(M, N - 1))
|
|
220 IF M > 0 AND N > 0 THEN N = N - 1 : R%(SP) = 0 : SP = SP + 1 : GOTO 200
|
|
|
|
REM A(M - 1, 1)
|
|
230 IF M > 0 THEN M = M - 1 : N = 1 : R%(SP) = 1 : SP = SP + 1 : GOTO 200
|
|
|
|
REM N + 1
|
|
240 ACK = N + 1
|
|
|
|
REM RETURN
|
|
250 M = M(SP) : N = N(SP) : IF SP = 0 THEN RETURN
|
|
260 FOR SP = SP - 1 TO 0 STEP -1 : IF R%(SP) THEN M = M(SP) : N = N(SP) : NEXT SP : SP = 0 : RETURN
|
|
270 M = M - 1 : N = ACK : R%(SP) = 1 : SP = SP + 1 : GOTO 200
|