Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Повторение в ответе 
:(
    Опции темы
olgab22
Дата 22.12.2010, 16:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Как сделать так чтоб в ответе не было повторений
Код

man(victor).
man(petr).
man(nikolay).
man(andrey).
man(alexander).
man(dmitry).
man(oleg).
man(yury).
man(nikita).
man(ivan).
syn(andrey,victor).
syn(andrey,liubov).
syn(alexander,nikolay).
syn(alexander,anna).
syn(dmitry,andrey).
syn(dmitry,maria).
syn(yury,alexander).
syn(yury,elena).
syn(nikita,oleg).
syn(nikita,larisa).
syn(ivan,nikolay).
syn(ivan,anna).
doch(anna,victor).
doch(anna,liubov).
doch(maria,petr).
doch(maria,vera).
doch(tatiana,nikolay).
doch(tatiana,anna).
doch(marfa,andrey).
doch(marfa,maria).
doch(larisa,andrey).
doch(larisa,maria).
doch(raisa,alexander).
doch(raisa,elena).
sestra(X,Y):- (syn(Y,Z); doch(Y,Z)),doch(X,Z), X\=Y, not man(X).

выдает вот это, а хотелось бы без повторений
Код

sestra(X,Y)
X= anna, Y= andrey
X= anna, Y= andrey
X= tatiana, Y= alexander
X= tatiana, Y= alexander
X= marfa, Y= dmitry
X= larisa, Y= dmitry
X= marfa, Y= dmitry
X= larisa, Y= dmitry
X= raisa, Y= yury
X= raisa, Y= yury
X= tatiana, Y= ivan
X= tatiana, Y= ivan
X= larisa, Y= marfa
X= larisa, Y= marfa
X= marfa, Y= larisa
X= marfa, Y= larisa
16 Solutions

PM MAIL   Вверх
Грымзик
Дата 22.12.2010, 22:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Выводиться по два раза, потому что сестра как по матери, так и по отцу.
sestra(X,Y):- (syn(Y,Z); doch(Y,Z)),doch(X,Z), X\=Y, man(Z),!.%сетра по отцу
sestra(X,Y):- (syn(Y,Z); doch(Y,Z)),doch(X,Z), X\=Y.%сетра по матери, но из-за отсечение значит, что общего отца нет
PM MAIL   Вверх
olgab22
Дата 22.12.2010, 23:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата(Грымзик @ 22.12.2010,  22:49)
Выводиться по два раза, потому что сестра как по матери, так и по отцу.
sestra(X,Y):- (syn(Y,Z); doch(Y,Z)),doch(X,Z), X\=Y, man(Z),!.%сетра по отцу
sestra(X,Y):- (syn(Y,Z); doch(Y,Z)),doch(X,Z), X\=Y.%сетра по матери, но из-за отсечение значит, что общего отца нет

мне надо чтоб было все в одном и без повторений, а тут все равно повторения присутствуют
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума Prolog
Void
  • Пожалуйста, создавайте темы с содержательными названиями.
  • Уважаемые учащиеся, здесь всегда рады помочь Вам, но не делать за Вас вашу работу. У вас гораздо больше шансов получить помощь, если Вы приложите усилия и поделитесь с нами проблемами и результатами. В противном случае добро пожаловать в раздел Центр Помощи.
  • Получив ответ на интересующий Вас вопрос, не забудьте пометить его как решённый.

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

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


 




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


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

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