1

私はプロローグの初心者です。今まではファイルのすべての単語を読んで1つずつ表示できましたが、リストに保存したいと思います(表示したらすぐに1つずつ)。追加のすべてのロジックはどこにでもあり、2つのリストの内容を空のリストに追加します。たとえば、append(new_word、word_list、word_List)の場合、最初は私のword_listが空なので、すべて問題ありませんが、その後は「いいえ」と表示され、その時点で停止します。要素を1つずつリストに保存できるようにするためのヘルプが必要です。

4

1 に答える 1

1

差分リストを使用できます:

file_to_list(W, L) :-
   read_word(Word),
   append_dl(W, [Word|U]-U, Ws),
   !, file_to_list(Ws, L).

file_to_list_1(Ws, Ws).


append_dl(X-Y, Y-Z, X-Z).

file_to_list(UU, L-[])を呼び出して、単語のリストを取得します。スローダウンはありませんが、CapelliC のコードよりも多くの推論が必要です (1 ワードにつき 1 つ)。

于 2012-11-19T19:36:25.043 に答える