41 lines
777 B
Plaintext
41 lines
777 B
Plaintext
PROGRAM "Sudan function"
|
|
VERSION "0.0000"
|
|
|
|
DECLARE FUNCTION Entry ()
|
|
DECLARE FUNCTION F (n, x, y)
|
|
|
|
FUNCTION Entry ()
|
|
FOR n = 0 TO 1
|
|
PRINT " Values of F("; n; ", x, y ):"
|
|
PRINT " y/x 0 1 2 3 4 5"
|
|
PRINT " ----------------------------"
|
|
FOR y = 0 TO 6
|
|
PRINT y; " |";
|
|
FOR x = 0 TO 5
|
|
PRINT FORMAT$("####", F(n, x, y));
|
|
NEXT x
|
|
PRINT
|
|
NEXT y
|
|
PRINT
|
|
NEXT n
|
|
|
|
PRINT "F(2,1,1) ="; F(2, 1, 1)
|
|
PRINT "F(3,1,1) ="; F(3, 1, 1)
|
|
PRINT "F(2,2,1) ="; F(2, 2, 1)
|
|
|
|
END FUNCTION
|
|
|
|
FUNCTION F (n, x, y)
|
|
IF n = 0 THEN
|
|
RETURN x + y
|
|
ELSE
|
|
IF y = 0 THEN
|
|
RETURN x
|
|
ELSE
|
|
RETURN F (n - 1, F(n, x, y - 1), F(n, x, y - 1) + y)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
END FUNCTION
|
|
END PROGRAM
|