0
我努力學習序言和我工作的一個問題,我有兩個功能:Prolog的函數返回重複
findSiblings(X,L):-sibling(X,L).
sibling(X,Y):-parent(Z,X),parent(Z,Y).
其中X和Y的名字,L是返回值。我想爲findSiblings
函數返回X的兄弟姐妹的名字,並且它的確如此。但是,名稱會打印兩次,因爲它與父母都匹配。我不能更改sibling
函數,因爲它取決於一個家族樹,其中唯一的關係是parent(joe,bob)
。關於如何解決這個問題的任何想法?
爲了澄清,說丹尼爾和馬克是兄弟。
findSiblings(daniel,L).
回報
Mark;
Mark
你應該提供[mcve]。我們應該能夠運行你的代碼並看到你得到的結果。 – Enigmativity