我正在使用以下代码:
father_child(tom, sally).
father_child(john, alfred).
father_child(george, peter).
father_child(tom, dick).
father_child(john, harry).
father_child(george, eliz).
siblings(X, Y):- father_child(Z, X), father_child(Z, Y), dif(X,Y).
我可以使用以下代码获取所有兄弟姐妹的列表,但它会产生重复输出,其中兄弟位置设置为反转。如何避免这种情况:
?- findall((X,Y), siblings(X,Y), L).
L = [ (sally, dick), (alfred, harry), (peter, eliz), (dick, sally), (harry, alfred), (eliz, peter)].
答案 0 :(得分:4)
一种方法是,不使用class StockController{
$obj=new StockController();
$obj->checkAccessRights();
public function checkAccessRights(){
//some code here
}
public function getPID(){
//some code here
}
}
,而是使用dif/2
作为一种方法,不仅要确保它们不同,而且要按特定顺序排列,确保对的唯一性:
@</2