|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
26.04.2012, 23:47 | #1 |
Регистрация: 28.02.2012
Сообщений: 6
|
дерево
будто правельно работает но в конце вывода 268 (
и кучу непонятных чисел ( нужно найти наименьший элемент дерева! вот код Program BinDerevo; uses crt; type TreeType = ^ElType; ElType = Record inf: integer; Left, Right: TreeType; end; Var tree: TreeType;z: integer; {------------------------------------------------------------------} Procedure AddElement(var b: TreeType; k:integer); begin if b=nil then begin new(b); b^.inf:=k; b^.left:=nil; b^.right:=nil; end else if b^.inf<=k then AddElement(b^.left, k) else AddElement(b^.right, k); end; {-----------------------------------------------------------------------------------------} Procedure PrintTree(b: TreeType; t: integer); begin if b=nil then writeln('derevo puste') else with b^ do begin inc(t); if left<>nil then PrintTree(left,t); write(' ':4*t); writeln(inf:4); if right<>nil then PrintTree(right,t); dec(t); end; end; {-----------------------------------------------------------------------------------------------------------------} Procedure SortDown(var b:TreeType); begin if b=nil then writeln('derevo puste') else with b^ do begin if right<>nil then SortDown(right); write(inf,' '); if left<>nil then SortDown(left); end; writeln(b^.left^.inf); readln; end; {------------------------------------------------------------------------} Procedure ClearTree(var b:TreeType); begin if b<>nil then begin if b^.left<>nil then ClearTree(b^.left); if b^.right<>nil then ClearTree(b^.right); dispose(b); end; end; {------------------------------------------------------------------------------------------------------------------} begin tree:=nil; clrscr; checkeof:=true; writeln('vvedit chusla poslidovnosti v kinci- 111'); while z <>111 do begin read(z); AddElement(tree,z); readln; end; writeln('gotove derevo '); PrintTree(tree,0);readln; writeln('naimenshi '); readln; SortDown(tree); readln; ClearTree(tree); end. |
27.04.2012, 15:40 | #2 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,341
|
Код:
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
дерево в БД | kate158 | БД в Delphi | 3 | 17.01.2012 11:29 |
Дерево | Vladimer | Помощь студентам | 1 | 19.11.2010 07:12 |
Дерево в С# | vedro-compota | C# (си шарп) | 5 | 07.11.2010 14:02 |
Дерево | Rifler | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 06.05.2008 08:42 |
Дерево | Yoger | БД в Delphi | 3 | 25.01.2007 01:24 |