Логическая задача - Prolog (227078)

Узнай цену своей работы

Формулировка задачи:

Помогите, пожалуйста дописать решение задачи: Браун, Гриффит, Клеменс и Грин -четверо студентов университетов разных стран встретились на международном фестивале молодёжи и студентов. Один из них – канадец, второй – американец, третий – англичанин, четвёртый – австралиец. Браун и Клеменс были на концерте, в котором принимал участие англичанин. Гриффит и австралиец пели дуэтом под аккомпанемент американца. Австралиец пригласил к себе в гости Грина и собирается пригласить Брауна. Браун за время фестиваля так и не познакомился с Клеменсом. Определите национальности студентов. Большую часть решения я написал, мне осталось записать последнее предложение: Браун за время фестиваля так и не познакомился с Клеменсом. Я не могу понять как его связать с остальными.

Решение задачи: «Логическая задача»

textual
Листинг программы
nations(Mens, Nations):-
    Mens = [braun, griff, klem, grin],
    Nations = [Braun, Griff, Klem, Grin],
    permutation([can, amer, angl, avstr], Nations),
    Braun \= angl, Klem \= angl, % 1
    Griff \= avstr, Griff \= amer, % 2
    Grin \= avstr, Braun \= avstr, % 3
    Meets = [Griff, avstr, amer], % 4
    not( member(Braun, Meets) ). % 5

Объяснение кода листинга программы

  1. Создается список Mens с четырьмя элементами: braun, griff, klem, grin.
  2. Создается список Nations с четырьмя элементами: Braun, Griff, Klem, Grin.
  3. Выполняется операция перестановки, в результате которой список Nations принимает значение [can, amer, angl, avstr].
  4. Проверяется, что элемент Braun не равен angl, а элемент Klem не равен angl.
  5. Проверяется, что элемент Griff не равен avstr и не равен amer.
  6. Проверяется, что элемент Grin не равен avstr и не равен braun.
  7. Создается список Meets с тремя элементами: Griff, avstr, amer.
  8. Проверяется, что элемент Braun не является членом списка Meets.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 3.833 из 5