問題是我需要編寫一個能夠諮詢數據庫中產品的謂詞,以便它返回一個填充了價格降低的產品名稱的列表(表示爲在「狀態」。Prolog - 關於事實和列表的練習
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).
我很感激。 現在,它給了我三個不同的解決方案。我怎麼能強迫謂詞給我一個解決方案嗎?事實上,最後一個?
我不跟着你。 – mkll 2012-01-05 17:59:03