このディレクトリの索引

# # リストの要素を一つ選択する # # 8クイーンの部品として使われることで有名な述語である。 # # append/repeatの姿を持つ述語だが、使われたものが残り要素の中に戻ってくるところが面白い。 # ここでは、定義を二つ示す。後者の方が遅いが宣言的だ。 # リストの要素を一つ選択する(_選択要素,[_選択要素|_残り要素ならび],_残り要素ならび). リストの要素を一つ選択する(_選択要素,[_選択要素_1|R1],[_選択要素_1|R2]) :- リストの要素を一つ選択する(_選択要素,R1,R2). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% リストの要素を一つ選択する(_選択要素,_選択ならび,_残りの要素ならび) :- append(_前ならび,[_選択要素|_後ならび],_選択ならび), append(_前ならび,_後ならび,_残りの要素ならび).