Логическая задача на Visual Prolog, проверка условий
Формулировка задачи:
текст задачи: В Зазнандии три основных способа передвижения. Можно путешествовать пешком, а можно пользоваться частными воздушными такси или государственными воздушными трамваями. Четверо зазнандцев, живущих на окраине города, регулярно отправляются в центр на работу и на разные развлекательные мероприятия. В соответствии с национальными традициями все четверо одеваются в яркую однотонную одежду.
Экскурсовод-зазнандец, который использует стиль речи, характерный для жителей страны, объясняет, кто как одевается и кто каким транспортом пользуется.
1. Из четверых не найдется пары, путешествующей пешком или на воздушном такси.
2. Ни А ни Б, которые не пользуются воздушным такси, не носят красное.
3. Тот, кто одевается в красное, не путешествует пешком.
4. Ни тот, кто одевается в зеленое, ни тот кто одевается в синее, не ездят на такси.
5. Ни В, который не ездит на воздушном трамвае, ни Г не одевается в оранжевое.
6. Г, который не одевается в красное, не путешествует пешком.
7. Единственный, кто одевается в зеленое – а это не Б, не ездит на воздушном трамвае.
Ниже приведены мои попытки реализации кода, программа выводит “no solution”. В коде не описано первое условие “Из четверых не найдется пары, путешествующей пешком или на воздушном такси” и я не знаю как правильно его описать.
Помогите, пожалуйста, доработать программу.
Решение задачи: «Логическая задача на Visual Prolog, проверка условий»
textual
Листинг программы
?- time(жители1(Жители)). % 6,289 inferences, 0.000 CPU in 0.006 seconds (0% CPU, Infinite Lips) Жители = [чел(а, пешком, зеленое), чел(б, трамваем, оранжевое), чел(в, такси, красное), чел(г, трамваем, синее)] .
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д