(外部、内部)再帰関数を定義した場合、以前の値がクリアされず今回に反映される。
LET t=fnV("1234",10)
PRINT t
LET t=fnV("567",10)
PRINT t
LET s$=fnS$(11,2)
PRINT s$
LET s$=fnS$(14,2)
PRINT s$
END
EXTERNAL FUNCTION fnV(s$,p)
LET L=LEN(s$)
IF L=0 THEN EXIT FUNCTION
LET fnV=fnV(s$(1:L-1),p)*p + VAL(s$(L:L))
END FUNCTION
EXTERNAL FUNCTION fnS$(n,p)
IF n=0 THEN EXIT FUNCTION
LET fnS$=fnS$(INT(n/p),p) & STR$(MOD(n,p))
END FUNCTION
実行結果
1234
1234567
1011
10111110