私は入力してリストを取る、と私は、これは私のコードで出力プロローグ追加リスト
で、それは私がしたいこと別の要素の追加したい問題 あります
run([],L).
run([X|Y],Lista) :- X =..Total, append(Total,Lista,ListaR), run(Y,ListaR), stamp(ListaR).
stamp([]).
stamp([X|Y]) :- nl, write(X), stamp(Y).
私が実行した場合にそれに:
run([p(X,Y,Z),h(Z,P,Q)],[]).
それがプリントアウトされます:
h
_G238
_G244
_G245
p
_G236
_G237
_G238
p
_G236
_G237
_G238
true.
なぜ2時間p?なにが問題ですか?
_GXXX
はあなたのためにそれを行うこの再帰関数append/3
を記述する必要はありませんリストを追加するための変数...
ありがとうございます。 –
私のポストが実際にあなたの質問に答えたと思うなら、あなたはそれをマークとしてクリックして受け入れたものとしてマークするべきです。 – svick
okでした...... –