0
數據:避免在聯盟副本在序言
%flight(FID, Start, Destination, Company, Seats).
%-------------------------------------------------
flight(1, 'China', 'Germany', 'Lufthansa', 210).
flight(2, 'Germany', 'Dubai', 'Lufthansa', 400).
flight(3, 'China', 'Germany', 'Lufthansa', 350).
flight(4, 'Japan', 'China', 'Eurowings', 50).
flight(5, 'Russia', 'China', 'Condor', 150).
flight(6, 'China', 'China', 'Condor', 2).
我想,在中國啓動或土地的航班。首先我想出了
q2(FID) :- flight(FID, 'China', _, _, _).
q2(FID) :- flight(FID, _, 'China', _, _).
這創建了一個在中國開始或着陸的航班聯盟。然而,這給了我重複:
F = 1 ;
F = 3 ;
F = 6 ;
F = 4 ;
F = 5 ;
F = 6.
我如何在列表中只有一次F = 6?我只能使用一組有限的操作員:,。 ! <> = +
我認爲我們有這個了。解決方法是再次使用這些ID。 – 2016-05-12 16:51:28
@Boris是的,我嘗試過,但它不是以同樣的方式工作... –