Задача про Ревизора - Prolog
Формулировка задачи:
Есть задача решённая на swi prolog
Волчонок, мартышка и бегемотик подошли к карусели, на которой кружились машинка и самолётик. Каждый из друзей хотел прокатиться и на том, и на другом. Машинка и самолётик вмещали только по одному пассажиру. За три захода каждый из друзей по разу прокатился на машинке и на самолётике. В первый заход мартышка прокатилась на самолётике, а волчонок — на машинке. Во время второго захода на самолётике катался волчонок. Кто и на чём катался во время третьего захода?
Реально ли переделать её на visual prolog 5.2? Или проще с нуля писать? Попытался переделать но ошибок куча и чем дальше тем страшнее(! Может посоветует кто что??? ps:Книгу читаю, за полезный совет не считается))
Ответьте кто нибудь пожалуйста!
Решение задачи: «Задача про Ревизора»
textual
Листинг программы
domains li=passenger(jiv,lii) lii=li* jiv=monkey(String);wolf(String);hippo(String) predicates nondeterm member(jiv,li). solve(li). clauses solve([passenger(monkey, [X1,X2,X3]), passenger(wolf, [Y1, Y2,Y3]), passenger(hippo, [Z1, Z2, Z3])]):-member([X1, Y1, Z1]), member([X2, Y2, Z2]),member([X3, Y3, Z3]), member([X1, X2, X3]), member([Y1, Y2, Y3]), member([Z1, Z2, Z3]). member(H,[H|_]). member(H,[_|Tail]):-member(H,Tail). goal solve(X).
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д