Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Рекурсивные родственные отношения 
:(
    Опции темы
jollylest
Дата 14.3.2009, 22:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 14.3.2009

Репутация: нет
Всего: нет



Здравствуйте.
Изучаю пролог, начал с создания т.н. базы родственных отношений, которая описывается во многих учебниках по прологу. Простые отношения типа parent(), brother() и т.д. понятны, но в заданиях для самостоятельного изучения есть также и такие, для осуществления которых, насколько я понял, необходимо использовать рекурсию. Например, необходимо найти племянницу любого уровня. Для первого уровня я сделал так:
niece(A,B) :- parent(C,B), parent(C,D), parent(D,A), not(parent(B,A)), woman(A), write(A," is a niece of ",B).
А как получить племянниц всех уровней (т.е. двоюродную, троюродную и т.д.) никак не могу понять. Знаю, что можно определить несколько правил, по одному на каждый уровень, но это не то, что хотелось бы, сами понимаете... Примеров на такие отношения найти нигде не смог.
Помогите пожалуйста разобраться.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума Prolog
Void
  • Пожалуйста, создавайте темы с содержательными названиями.
  • Уважаемые учащиеся, здесь всегда рады помочь Вам, но не делать за Вас вашу работу. У вас гораздо больше шансов получить помощь, если Вы приложите усилия и поделитесь с нами проблемами и результатами. В противном случае добро пожаловать в раздел Центр Помощи.
  • Получив ответ на интересующий Вас вопрос, не забудьте пометить его как решённый.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Void.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Prolog | Следующая тема »


 




[ Время генерации скрипта: 0.0516 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.