0
私がここでやろうとしているのは、最初のCメンバーをリストから取り出して同じリスト内で新しいリストを作成する "最初の"述語です。例えば最初([a、b、c、d、e]、3、R)。 R = [a、b、c]を返します。 今、無限ループが発生しており、原因を見つけることができません。ご協力いただきありがとうございます。Prolog。リストをコピーするために再帰を使用している無限ループ
first([],_,[]).
firts([_], 0, []).
first([H|T], C, R):- C >= 1,
append(R, [H], R2),
C2 is C - 1,
first(T, C2, R2).