我想在Prolog中正確接受一個項目,一個列表和一個數字,並檢查項目是否在列表中的次數。例如在Prolog中遇到謂詞問題
count(7,[3,7],X).
將返回X=1
。
count(7,[3,7],1).
將返回true
這是我迄今爲止
count_occur(A,[0|B],D).
count_occur(A,[A|C],D) :- count_occur(A,C,D1), D is D1+1.
count_occur(A,[B|C],D) :- count_occur(A,C,D).
我很新的序言和真正努力理解這種編程範式。
我想要做的是查看列表中的第一個項目是否與傳入值(A)匹配,如果確實增加了D並且再次檢查列表的其餘部分。無論如何,這是我在lisp或其他語言中的做法。真的可以使用一些幫助,一直在這一段時間,它只是不點擊我。
第一行的目的是什麼?而且你必須處理有空列表的情況。 –