我正在用 Prolog 编写一个文字冒险游戏,并且正在打印房间出口。我有代码:
exits_from(Room) :-
connected(Room, X),
write(X), write(' ').
其中 connected/2 是:
connected(X, Y) :- path(X, Y).
connected(X, Y) :- path(Y, X).
路径是:
path(room, hallway).
path(hallway, foyer).
等等。
但是,当我打印房间的出口时,它得到第一个,然后想要一个';' 说我想要另一个解决方案。无论如何,是否有强制谓词完全计算结果,这样玩家就不必继续要求更多的退出?