諮詢?- go(c, g).
返回false,但對於?- go(a, d).
表示正確。我實際上並不瞭解它,因爲我已經添加了適當的規則,並且對於其中的大多數規則而言都是有效的。控制檯中的測試
下面是我使用的語句:
door(a, b).
door(b, c).
door(c, d).
door(b, e).
door(e, f).
door(e, g).
go(FromRoom, ToRoom):-
door(FromRoom,ToRoom).
go(FromRoom, ToRoom):-
door(ToRoom, FromRoom).
go(FromRoom, ToRoom) :-
door(FromRoom, NextRoom),
go(NextRoom, ToRoom), !.
go(FromRoom, ToRoom):-
door(ToRoom,NextRoom),
go(NextRoom, FromRoom), !.
我不能改變,因爲這是我們必須使用它的規則可能是錯誤的計劃 – user1232622 2012-03-26 17:25:02
所以你的問題是什麼? – whd 2012-03-26 17:47:03
我的問題是,去(c,g)。應該說是的,但爲什麼它說不,當我把它放在控制檯 – user1232622 2012-03-26 17:55:49