1

给出的查询是

beside(Next,Beside,[a,b,c,d]).

Next=a, Beside=b;

Next=b, Beside=c;

Next=c, Beside=d;

如果元素 x,y 彼此相邻,则该规则应该为真。

我的只能给出第一个答案,Next=a, Beside=b但不能给出其他答案。

那么我怎样才能让它提供所有的答案呢?

4

1 回答 1

2

append 完成这项工作:

beside(Next, Beside, L) :-
    append(_, [Next, Beside | _], L).
于 2013-03-31T08:22:29.867 回答