0
私はフライトに関する事実のリストを持っていますが、ある都市からリストの都市へ順番にすべてのルートを返す予測を書くにはどうすればいいですか?例えば、rome
から[moscow, amsterdam]
までのすべてのルート。Prolog:ある都市から収集都市へのルートを見つける
flight(london,dublin).
flight(rome,london).
flight(rome,paris).
flight(paris,dublin).
flight(berlin,moscow).
flight(paris,amsterdam).
flight(berlin,dublin).
flight(london,newyork).
flight(dublin,newyork).
flight(dublin,cork).
flight(dublin,rome).
flight(dublin,chicago).
flight(amsterdam,hongkong).
flight(london,hongkong).
flight(dublin,amsterdam).
これまでに何を試しましたか?ここではヒントがあります: 'A'から' B'へのルートは、 'A'から' B'への直接飛行、 'A'から' C'への直接飛行、 'C'から' B '。 – lurker
私はtrip(rome、london)が[rome、london]、[rome、paris、london]などを返すなど、都市から都市へのすべてのルートを返す予測を作成しましたが、書く方法はわかりませんある都市からすべての可能なルートを都市リストに返すと予測します。 – Davidw
「A」から「B」までのすべてのルートで成功する述語が必要です。次に、 'findall':' findall(Dest、route(A、Dest)、AllDestinations) 'を使います。 – lurker