問題は、データベース内の製品を参照できる述語をプログラムして、価格が引き下げられた製品の名前で満たされたリストを返すようにする必要があることです (「状態」によって示されます)。
domains
state = reduced ; normal
element = string
list = element*
database
producte (string, integer, state)
predicates
nondeterm reduced(list)
clauses
% ---> producte( description , price , state )
producte("Enciam",2,reduced).
producte("Peix",5,normal).
producte("Llet",1,reduced).
producte("Formatge",5,normal).
%unique case
reduced([D]):-
producte(D,_,reduced).
%general case
reduced([D|L]) :-
producte(D,_, reduced),retract(producte(D,_,reduced)),reduced(L).
Goal
reduced(List).
それは有り難いです。今、それは私に3つの異なる解決策を提供します. どうすれば述語に 1 つの解決策を与えるように強制できますか? 実際、最後の 1 つですか?