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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 27.05.2013, 18:30   #1
Gorgetr
 
Регистрация: 26.05.2013
Сообщений: 9
По умолчанию Prolog братья в бинарном дереве

Определить,являются ли два заданные элементы дерева братьями
Gorgetr вне форума Ответить с цитированием
Старый 27.05.2013, 19:03   #2
rrrFer
Санитар
Старожил
 
Аватар для rrrFer
 
Регистрация: 04.10.2008
Сообщений: 2,577
По умолчанию

что есть "братья" в дереве?
какой диалект пролога?
сам решить пробовал?
rrrFer вне форума Ответить с цитированием
Старый 27.05.2013, 19:46   #3
Gorgetr
 
Регистрация: 26.05.2013
Сообщений: 9
По умолчанию

я так понял братья- это те листья, которые принадлежат одному корню, но не могу реализовать так как не хватает мозгов...Turbo prolog

Последний раз редактировалось Gorgetr; 27.05.2013 в 19:49.
Gorgetr вне форума Ответить с цитированием
Старый 27.05.2013, 22:56   #4
rrrFer
Санитар
Старожил
 
Аватар для rrrFer
 
Регистрация: 04.10.2008
Сообщений: 2,577
По умолчанию

все листья принадлежал одному корню
rrrFer вне форума Ответить с цитированием
Старый 28.05.2013, 13:45   #5
Gorgetr
 
Регистрация: 26.05.2013
Сообщений: 9
По умолчанию

не могли бы подсказать , как выглядит код этой проверки на принадлежность?
Gorgetr вне форума Ответить с цитированием
Старый 28.05.2013, 17:12   #6
rrrFer
Санитар
Старожил
 
Аватар для rrrFer
 
Регистрация: 04.10.2008
Сообщений: 2,577
По умолчанию

я так и не понял что за братья, но как-то так, наверное:

Код:
% tree(Val, Left, Right)
p(A, B, tree(_, L, R)):-
  L = tree(A, _, _), R = tree(B, _, _),!;
  p(A, B, L), !; p(A, B, R).
не проверял, возможны опечатки, а может быть я не понял что есть братья

Последний раз редактировалось rrrFer; 28.05.2013 в 21:23.
rrrFer вне форума Ответить с цитированием
Старый 28.05.2013, 18:34   #7
Gorgetr
 
Регистрация: 26.05.2013
Сообщений: 9
По умолчанию

спасибо огромное) но что такое p(L) и p(R) это предикаты? L и R это поддеревья?

Последний раз редактировалось Gorgetr; 28.05.2013 в 18:50.
Gorgetr вне форума Ответить с цитированием
Старый 28.05.2013, 21:24   #8
rrrFer
Санитар
Старожил
 
Аватар для rrrFer
 
Регистрация: 04.10.2008
Сообщений: 2,577
По умолчанию

Цитата:
спасибо огромное) но что такое p(L) и p(R) это предикаты? L и R это поддеревья?
это опечатки о которых я предупреждал, вроде бы исправил (но опять не проверял)
rrrFer вне форума Ответить с цитированием
Старый 28.05.2013, 21:28   #9
Gorgetr
 
Регистрация: 26.05.2013
Сообщений: 9
По умолчанию

проверяю щас запрос никак не могу придумать)
Gorgetr вне форума Ответить с цитированием
Старый 28.05.2013, 21:36   #10
Gorgetr
 
Регистрация: 26.05.2013
Сообщений: 9
По умолчанию

работать то работает,только не понимаю че писать в Goal)
Gorgetr вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Освобождение памяти в бинарном дереве? perceptron2013 Общие вопросы C/C++ 4 06.11.2012 16:28
Указатель на родителя в бинарном дереве Green Gin Общие вопросы C/C++ 8 01.04.2012 18:14
удаление элемента в бинарном дереве Kukurudza Общие вопросы C/C++ 1 26.06.2011 22:51
Расчет уровней в бинарном дереве holi10 Общие вопросы C/C++ 0 01.06.2011 18:22
Поиск в бинарном дереве не по ключу lebrosha Помощь студентам 2 26.05.2009 15:32