このディレクトリの索引
cradle8810 くれいど 
#  [15回演習問題1.1.2]
#  第1引数に自然数、第2引数に自然数のリストが与えられたとき、
#  「第2引数のリストから第1引数の倍数を除いたリスト」が第3引数となる
#  述語remove_multi/3を定義せよ。 エラー処理は考えなくて良い。

'第1引数に自然数、第2引数に自然数のリストが与えられたとき、
「第2引数のリストから第1引数の倍数を除いたリスト」が第3引数となる'(_自然数,_自然数のリスト,_第2引数のリストから第1引数の倍数を除いたリスト) :-
findall(_第2引数のリストから第1引数の倍数を除いた,(
第2引数のリストから第1引数の倍数を除いた(_自然数のリスト,_自然数,_第2引数のリストから第1引数の倍数を除いた)),_第2引数のリストから第1引数の倍数を除いたリスト).

第2引数のリストから第1引数の倍数を除いた(_自然数のリスト,_自然数,_自然数の倍数を除いた自然数) :-
第2引数のリストから(_自然数のリスト,_自然数の倍数を除いた自然数),
自然数の倍数を除いた(_自然数の倍数を除いた自然数,_自然数).

第2引数のリストから(_自然数のリスト,_自然数の倍数を除いた自然数) :-
member(_自然数の倍数,_自然数のリスト).

自然数の倍数を除いた(_自然数の倍数を除いた自然数,_自然数) :-
\+(0 is _自然数の倍数を除いた自然数 mod _自然数).