Определите, кто является поэтом, кто композитором, кто художником и у кого есть борода - Prolog

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

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

Андреев, Борисов и Николаев – поэт, композитор и художник. У поэта нет бороды, и он зарабатывает меньше всех. Андреев считает, что Николаеву очень идет борода. Андреев зарабатывает больше композитора. Определите, кто является поэтом, кто композитором, кто художником и у кого есть борода.

Решение задачи: «Определите, кто является поэтом, кто композитором, кто художником и у кого есть борода»

textual
Листинг программы
predicates
    profes(symbol, symbol)
    boroda(symbol, symbol)
clauses
    boroda (has,  nikolaev).
    profes(nikolaev, kompositor).
    profes(andreev, hudojnik).
    profes(borisov, poet).
goal
?   profes(X,Y)
?   boroda (X,Y)

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

  1. У нас есть четыре предиката: — profes(symbol, symbol) — определяет профессию — boroda(symbol, symbol) — определяет наличие бороды
  2. Есть четыре clauses: — boroda (has, nikolaev) — у Николаева есть борода — profes(nikolaev, kompositor) — Николаев является композитором — profes(andreev, hudojnik) — Андриянов является художником — profes(borisov, poet) — Борисов является поэтом
  3. В цели заданы два вопроса: ? profes(X,Y) — кто является Y специалистом ? boroda(X,Y) — у кого есть борода

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


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

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

8   голосов , оценка 4.125 из 5
Похожие ответы