Вопрос 1. Написать программу для определения принадлежности узла бинарному дереву


Добавил:DMT
Дата создания:30 декабря 2007, 19:19
Дата обновления:31 января 2008, 12:41
Просмотров:6300 последний позавчера, 0:27
Комментариев: 3
Вопрос 1. Написать программу для определения принадлежности узла бинарному дереву
up

Комментарии для "Вопрос 1. Написать программу для определения принадлежности узла бинарному дереву"


Пользователь: DMT
Сообщений: 123
Статус: Программист
Зарегистрирован:
18 октября 2007, 2:35
Был:13 ноября 2017, 4:54
DMT
smsup
Дата: 4 января 2008, 12:45 Сообщение № 1
Программа принадлежности узла - дереву.
Код на Lisp
  1. domains
  2. chislo=integer
  3. tree=tree(tree,chislo,tree);void
  4. predicates
  5. nondeterm in_tree(tree,chislo)
  6. begin(tree,chislo)
  7. clauses
  8. begin(Tr,Tmp):-in_tree(Tr,Tmp),
  9. write("The element is ",Tmp," is exist in tree\n"),
  10. !.
  11. begin(_,_):-write("Элемента нет в списке\n").
  12. in_tree(void,_):-fail.
  13. in_tree(tree(_,Tmp,_),Tmp):- !.
  14. in_tree(tree(L,_,_),Tmp):-in_tree(L,Tmp).
  15. in_tree(tree(_,_,R),Tmp):-in_tree(R,Tmp).
  16. goal
  17. T=tree(tree(void,2,tree(tree(void,13,void),6,void)),10,
  18. tree(void,34,void)),begin(T,234).
При использовании обязательна ссылка на http://DMTSoft.ru
Пользователь: lilo
Сообщений: 38
Статус: Незримый
Зарегистрирован:
8 января 2008, 12:39
Был:9 апреля 2008, 19:55
lilo
smsup
Дата: 8 января 2008, 12:48 Сообщение № 2
Код на Lisp
  1. domains
  2. tree = tree(string, tree, tree) ; void
  3. predicates
  4. have(treetype,string)
  5. clauses
  6. have(empty,_) :- fail.
  7. have(tree(C,_,_),C).
  8. have(tree(_,L,R),S) :- have(L,S);
  9. have(R,S).
  10. goal
  11. have(tree("1", tree("1.1", void, void),
  12. tree("1.2", void, void)), "1.2").
При использовании обязательна ссылка на http://DMTSoft.ru

Пользователь: ruslan
Сообщений: 23
Статус: Незримый
Зарегистрирован:
5 января 2008, 2:42
Был:29 января 2008, 21:23
ruslan
smsup
Дата: 15 января 2008, 0:26 Сообщение № 3
lilo, в 8-й строке вместо
empty
надо написать void, иначе не работает!