Задача два кувшина с водой. Поиск в глубину в swi-prolog.
|
|
Вторник, 24 Ноября 2020 г. 14:27
+ в цитатник
Vesper: Твоя задача - реализовать предикат next(X,Y) где Х и У - валидные состояния, т.е. списки длиной 2. У тебя есть три варианта операций - наполнить, вылить, перелить. Наполнить - налить в левый 5 или в правый 8. Опустошить - запихать 0 в одно из состояний. Перелить - пиши условия, так как перелить можно только минимум из оставшегося свободным пространства в одном кувшине и количества воды во втором. "Налить" будет выглядеть примерно так:
next([XL|XR],[5|XR]).
next([XL|XR],[XL|8]).
Остальное пробуй писать сам.
https://forum.sources.ru/index.php?showtopic=420847&view=findpost&p=3842369
Метки:
Прочие языки программирования
-
Запись понравилась
-
0
Процитировали
-
0
Сохранили
-