Помощь - Поиск - Пользователи - Календарь
Полная версия: деревья
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
B&M
создать структуру "бинарное дерево" (информационное поле -рядок текста) по первому сиволу рядка из елементов
текстового файла. напечатать информацию всех елементов дерева - листов

program Project2;

{$APPTYPE CONSOLE}

uses
  SysUtils
const n=24;
  type tree=^elem;
  elem=record
  info:char;
  left:tree;
  right:tree;
  end;
   var a:array[1..n] of char;
  beg:tree; //nachalo dereva
  r:byte;
  x,i:char; //ukozateli dlja dvijenija
  
  //процедура вставки елементов дерева
  procedure insert(x:char; var beg:tree);
  var p,p1,p2:tree; //ukozateli

begin
  { TODO -oUser -cConsole Main : Insert code here }
   New (p);
   p^.info:=x;
   p^.left:=nil;
   p^.right:=nil;
   if (beg=nil) then beg:=p
              else
                 begin
                 p1:=beg;
                 while p1<>nil do
                   begin
                     p2:=p1;
                     if x<p1^.info then
                     p1:=p1^.left

                   else
                   p1:=p1^.right;
                   end;
                   if x<p2^.info then
                   p2.left:=p
                   else
                   p2^.right:=p;
                 end;
   end;

   begin
   randomize ;
   beg:=nil;
   writeln;
   writeln('spisok - Tree');
   writeln;
   for r:=1 to n do
   begin
   x:=chr(random(255));
   insert(x,beg);
   write(x,' ');
   readln; readln;
   end;




end.

maksimla
извени хоть я плохо пишу но стараюсь на русском писать а тут на каком то другом языке попытайся исправить на русский язык и тогда поможем наверное с задачей
passat
Есть предложение посетить раздел FAQ. Там есть почти вся учебная информация по созданию и обходу деревьев.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.