gen(N,R)
:
R
0 から N-1 までの値です。
N
非ゼロの正の整数。N
常に与えられます。
例: ?- genN(2,R)
. このように実装しましたがR=0;R=1.
、「out of local static error」があります:
gen(X,0).
gen(X,R) :-
gen(X,R1),
R is R1+1,
R<X, % why this line
R>=0. % and this line can't keep the range successfully?
結果:
?- genN2(3,R).
R = 0 ;
R = 1 ;
R = 2 ;
ERROR: Out of local stack