リストにいくつかの数値を追加しようとしています。これらの数値は、X が下限で上限がからX
までの範囲にあり、生成されたこれらの数値をリストに保存します。私はこれを試しました:Y
Y
domains
list=integer*.
predicates
nondeterm generate(integer,integer,list).
nondeterm append(integer,list,list).
clauses
append(X,[],[X]).
generate(0,0,[]).
generate(X,X,[]) :-
write("The Upper And Lower Numbers Are The Same\n").
generate(X,Y,[X|T]) :-
X<=Y,
N=X+1,
A=N+1,
append(N,T,Z),
generate(A,Y,Z).
goal
generate(1,4,Result).
しかし、目標をテストすると、「解決策はありません」と表示されます。私は何を間違っていますか?ご助力ありがとうございます。