Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.05.2011, 20:13   #1
Дмитрий142
Пользователь
 
Регистрация: 21.01.2009
Сообщений: 22
Вопрос Пролог...родственные отношения

Необходимо описать предметную область «родственные отношения».
Для этого задайте в качестве фактов следующие отношения между объектами предметной области:
- parents(X, Y) – X является родителем Y;
- man(X) – X мужчина;
- woman(X) –X женщина.
Например,
parents(tom, ellen).
man(tom).
woman(ellen).

Определите в качестве правил (используя отношения parents, man,
woman) следующие отношения:
- sister(X, Y) – X является сестройY;
- brother(X, Y) – X является братом Y;
- father(X, Y) – X является отцом Y;
- mother(X, Y) – X является матерью Y;
- grandfather(X, Y) – X является дедушкой Y;
- grandmother(X, Y) – X является бабушкой Y.

вот программа которая определяет отношение aunt(X, Y) – «X является тетей Y» через отношения parents и sister.
Код:
predicates						
parent(STRING, STRING)
sister(STRING, STRING) 
aunt(STRING, STRING)
%section 
clauses
parent("Vasko","Alex").
sister("Lena","Vasko").
aunt("Lena","Alex"):-
parent("Vasko","Alex"), sister("Lena","Vasko").

goal
aunt(X,Y), parent(Z,Y), sister(X,"Vasko").
Как по аналогии написать прорамму ??
Дмитрий142 вне форума Ответить с цитированием
Старый 09.05.2011, 15:07   #2
Дмитрий142
Пользователь
 
Регистрация: 21.01.2009
Сообщений: 22
По умолчанию

Если можно, с коментариями.
Дмитрий142 вне форума Ответить с цитированием
Старый 10.05.2011, 02:53   #3
slipokorn
Пользователь
 
Регистрация: 24.05.2010
Сообщений: 10
По умолчанию

делал похожую программу

Код:
DOMAINS
 Name=symbol 
PREDICATES
 son(Name,Name) \\ сын
 do(Name,Name) \\ дочь
 vnuk(Name,Name) \\ внук
 vn(Name,Name) \\внучка
 gf(Name,Name) \\ дедушка
 gm(Name,Name) \\ бабушка
 f(Name,Name) \\ папа
 m(Name,Name) \\ мама

CLAUSES

 son(petya,kolya).
 son(kolya,grisha).
 son(grisha,alex).
 son(anya,gora).
 son(anya,victor).
 do(kolya,anya). 
 do(victor,olga).
 do(grisha,masha).
 f(grisha,alex).
 f(grisha,masha).
 f(kolya,anya).
 f(kolya,grisha).
 f(petya,kolya).
 f(victor,olga).
 m(anya,gora).
 m(anya,victor).

 vnuk(X,Y):-son(X,Z),son(Z,Y). 
 vnuk(X,Y):-do(X,Z),son(Z,Y). 

 vn(X,Y):-son(X,Z),do(Z,Y).

 gf(X,Y):-f(X,Z),f(Z,Y).

 gm(X,Y):-m(X,Z),f(Z,Y).

Последний раз редактировалось slipokorn; 10.05.2011 в 02:56.
slipokorn вне форума Ответить с цитированием
Старый 10.05.2011, 19:26   #4
Дмитрий142
Пользователь
 
Регистрация: 21.01.2009
Сообщений: 22
По умолчанию

Извините....но не то...или я дурак Мне нужно чтоб был
Код:
goal
Дмитрий142 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
бинарные отношения Снс Паскаль, Turbo Pascal, PascalABC.NET 0 29.09.2010 11:39
Отношения...всегда актуально=) SIGMA Свободное общение 4 08.06.2009 14:22
Какие у PHP отношения с DLL Altera PHP 4 20.11.2008 22:36