正如我在以前的评论说,问题是,get/3
在预定义的谓语library(pce)
。修改代码很简单:
door(a,b).
door(b,c).
door(c,d).
door(d,e).
myget(X,X,A,P) :-
reverse(A,P),
!.
myget(X,Y,A,P) :-
once(door(X,Z);door(Z,X)),
not(member(Z,A)),
format('I am in room ~w.~n', Z),
myget(Z,Y,[Z|A],P).
查询:
?- myget(a,e,[a],P).
I am in room b.
I am in room c.
I am in room d.
I am in room e.
P = [a, b, c, d, e].
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句