• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

    Если вы у нас впервые, загляните на страницу о проекте и правила – там коротко описано, как задать вопрос так, чтобы быстро получить ответ. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по старой ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

Turbo Prolog

maria_007

Ученик
Регистрация
21 Окт 2011
Сообщения
3
Реакции
0
Баллы
0
здравствуйте.
помогите пожалуйста найти ошибку в задаче.
вот описание задания:

Известна система родственных связей с отношением РОДИТЕЛЬ.
Имена в ней не повторяются. Разработать программу логического
вывода, позволяющую определить, кто кому приходится отцом,
матерью, братом, сестрой, дядей, тетей, дедушкой, бабушкой.

а вот код программы:


domains
name=symbol.
predicates
woman(name)
man(name)
parent(name,name)
father(name,name)
mother(name,name)
grandfather(name,name)
grandmother(name,name)
brother(name,name)
sister(name,name)
uncle(name,name)
aunt(name,name)
son(name,name)
grandson(name,name)
daughter(name,name)
granddaughter(name,name)
clauses
parent(alexandr,vasya).
parent(alexandr,natasha).
parent(alexey,denis).
parent(viktor,alexandr).
parent(viktor,olga).
parent(viktor,kirill).
parent(sveta,alexey).

woman(sveta).
woman(olga).
woman(natasha).

man(viktor).
man(alexandr).
man(alexey).
man(vasya).
man(denis).
man(kirill).

mother(X,Y):-parent(X,Y),woman(X).
father(X,Y):-parent(X,Y),man(X).

grandmother(X,Z):-parent(X,Y),parent(Y,Z),woman(X).
grandfather(X,Z):-parent(X,Y),parent(Y,Z),man(X).

brother(X,Y):-parent(Z,X),parent(Z,Y), man(X),X<>Y.
sister(X,Y):-parent(Z,X),parent(Z,Y), woman(X),X<>Y.

uncle(X,Y):-parent(Z,Y),brother(X,Z).
aunt(X,Y):-parent(Z,Y),sister(X,Z).

son(X,Y):-parent(Y,X),man(X).
daughter(X,Y):-parent(Y,X),woman(X).

grandson(X,Z):-parent(Z,Y),parent(Y,X),man(X).
granddaughter(X,Z):-parent(Z,Y),parent(Y,X),woman(X).

goal
grandson(X,Y), write(X, " to ", Y), nl, fail


при нажатии alt+r программы выдает ошибку No further help message
ПОМОГИТЕ РЕШИТЬ ЭТУ ПРОБЛЕМУ.......
заранее благодарю вас за помощь)
 
я вот скачал турбо пролог 2.0 никаких ошибок выдало вот что

vasya to viktor
denis to sveta
 
ну это же тоже ошибка.....
мне надо, чтобы он выдавал кто кому приходится отцом,
матерью, братом, сестрой, дядей, тетей, дедушкой, бабушкой.
я уже не знаю, что делать.....что где исправить.....
последняя надежда на ВАС.
помогите пожалуйста((((
 
Назад
Сверху