我正在关注 Prolog 教程 2.1。
程序
adjacent(1, 2).
adjacent(1, 3).
adjacent(1, 4).
main:-
adjacent(1, R),
write(R).
打印2
。
但它应该根据教程打印可能值的列表:
?- adjacent(1,2).
yes
?- adjacent(1,3).
no
?- adjacent(1,R).
R = 2 ;
R = 3 ;
R = 4 ;
no
我在 repl 中再次尝试只是为了得到相同的结果:
?- adjacent(1, R).
R = 2 .
如何获取/打印变量的可能值列表?