Я пытаюсь написать правило, которое просматривает базу данных фактов, складывает числа из каждого факта вместе и сохраняет его в списке: если быть конкретным, это вопрос:
Записьправило, основанное на ответе на вопрос 5, которое возвращает / показывает, сколько времени займет поездка между двумя станциями.
Ответ на вопрос 5:
time(Station1,Station2) :- overground(Station1,Station2,Time),
overground(Station1,_,Time),
overground(_,Station1,Time).
time(Station2,Station1) :- overground(Station2,Station1,Time),
overground(Station2,_,Time),
overground(_,Station2,Time).
time(Station1,Station2) :- overground(Station1,Station3,Time),
time(Station3,Station2);
overground(Station1,Station3,Time),
time(Station2,Station3).
time(Station1,Station2) :- overground(Station1,_,Time),
overground(_,Station2,Time).
time(Station1,Station2) :- overground(Station2,_,Time),
overground(_,Station1,Time).
Я попытался добавить список и добавитьэто время, но не повезло.
* да это точка с запятой.
Есть еще один файл, который содержит все наземные станции и время в формате "надземный (X, Y, Z) «.т.е. надземный (кентон, южный, 2).который показывает station1, station2 и время, необходимое для перехода от 1 до 2.
Я пытаюсь просмотреть всю базу данных, найти X и Y (что делает вопрос 5), а затем сложить всеZ находится между двумя станциями и помещает их в список.