Задача о хорошей собаке Фреде и его хозяине Сэме - Prolog

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

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

помогите сделать задачу... Факты и правила в этой задаче представлены предложениями: а) Фред – это колли. б) Сэм – хозяин Фреда. в) Сегодня суббота. г) В субботу холодно. д) Фред дрессированный. е) Спаниели – хорошие собаки, а колли такие же дрессированные. ж) Если собака хорошая и имеет хозяина, то она находится рядом с хозяином. з) Если в субботу тепло, то Сэм находится в парке. и) Если в субботу не тепло, то Сэм находится в музее. Где Фред? вот мой код, он неправильно работает, потому что не знаю как дальше сделать... помогите

Решение задачи: «Задача о хорошей собаке Фреде и его хозяине Сэме»

textual
Листинг программы
% ----- a
cобака('Фред', 'колли').
% ----- б
хозяин('Сэм', 'Фред').
% ----- в
сегодня('суббота').
% ----- г
погода('суббота','холодно').
% ----- д
дрессирована('Фред').
% ----- е
хорошая(Собака):-
  cобака(Собака, 'спаниель');
  cобака(Собака, 'колли'),
  дрессирована(Собака).
% ----- ж
где_находится(Собака, Когда, Где) :-
  cобака(Собака, _),
  хорошая(Собака),
  хозяин(Хозяин, Собака),
  где_находится(Хозяин, Когда, Где).
% ----- з
где_находится('Сэм', 'суббота', 'парк') :-
  погода('суббота','тепло'), !.
% ----- и
где_находится('Сэм', 'суббота', 'музей').
 
% ---- вопрос
где_находится(Собака, Где) :-
  сегодня(Сегодня),
  где_находится(Собака, Сегодня, Где).

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

  1. Собака('Фред', 'колли').
  2. Хозяин('Сэм', 'Фред').
  3. Сегодня('суббота').
  4. Погода('суббота','холодно').
  5. Дрессирована('Фред').
  6. Хорошая(Собака):-
    • Собака(Собака, 'спаниель');
    • Собака(Собака, 'колли'),
    • дрессирована(Собака).
  7. Где_находится(Собака, Когда, Где) :-
    • Собака(Собака, _),
    • хорошая(Собака),
    • хозяин(Хозяин, Собака),
    • где_находится(Хозяин, Когда, Где).
  8. Где_находится('Сэм', 'суббота', 'парк') :-
    • погода('суббота','тепло'), !.
  9. Где_находится('Сэм', 'суббота', 'музей').
  10. Где_находится(Собака, Где) :-
    • сегодня(Сегодня),
    • где_находится(Собака, Сегодня, Где).
  11. Сегодня('суббота').
  12. Погода('суббота','холодно').
  13. Дрессирована('Фред').
  14. Хорошая(Собака):-
    • Собака(Собака, 'спаниель');
    • Собака(Собака, 'колли'),
    • дрессирована(Собака).
  15. Где_находится(Собака, Когда, Где) :-
    • Собака(Собака, _),
    • хорошая(Собака),
    • хозяин(Хозяин, Собака),
    • где_находится(Хозяин, Когда, Где).
  16. Где_находится('Сэм', 'суббота', 'парк') :-
    • погода('суббота','тепло'), !.
  17. Где_находится('Сэм', 'суббота', 'музей').
  18. Где_находится(Собака, Где) :-
    • сегодня(Сегодня),
    • где_находится(Собака, Сегодня, Где).
  19. Сегодня('суббота').
  20. Погода('суббота','холодно').

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


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

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

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