0

XSB プロローグで inbuild setof (またはその他の inbuild 関数) を使用せずに、キーボード入力 (リスト) から重複のないリストを取得する必要があります。

独自の setof 関数を作成するにはどうすればよいですか?

入力と出力は次のようになります。

|?-list([a,b,c,d,a,b,c,d,e,f],L).  

L=[a,b,c,d,e,f];

前もって感謝します。

4

1 に答える 1

1

member/2 の使用はとても簡単です: 再帰的な list/2 を使用して各要素のコピーを作成し、入力リストの先頭をチェックするだけで、まだターゲット リストに含まれていません。チェックは member/2 で実行できます。独自に記述する必要があります... プログラム全体は 4 行のコードである必要があります。

于 2013-11-26T14:39:12.483 に答える