Страница 1 из 1

работа со структурами - дерево

Добавлено: 24 мар 2009, 20:33
Nostalgia
помогите пожалуйта доделать код.код во вложениях. вот задание"Создать структуру "бинарное дерево" из элементов файла из сиволов. Количество элементов расчитать по формуле n>10+2*i,где i=12. Найти среди элементов дерева минимальный по коду и напечатать этот элемент,его код и адрес этого элемента
program Project1;

Код: Выделить всё

{$APPTYPE CONSOLE}

uses
  SysUtils;

type
  tree=^elem;
  elem=record
  info:char;
  left:tree;
  right:tree;
  end;
  Tfile=file of char;
var
  f:Tfile;
  beg,beg1,Uk:tree;
  x:char;
  i:byte;
procedure pechat_file (var G:Tfile);
var
  j:integer;
  ch:char;
begin
  writeln ('Pechat file');
    for j:=1 to filesize(g) do
      begin
        read(g,ch);
        writeln(ch);
      end;


  { TODO -oUser -cConsole Main : Insert code here }
end;
function poisk_po_kluchu(ch:char;b:tree):tree;
var
  found:boolean;
begin
  found:=false;
    while (b<>nil) and not found do
      begin
        if b^.info=char then found:=true
        else
        if b^.info>char then b:=b^.left
        else
        b:=b^.right
      end;
      poisk_po_kluchu:=b;
      end;
begin
assignfile (f,'f1.dat');
reset(f);
pechat_file(f);
reset(f);
beg:=nil;
for i:=1 to filesize (f) do
  begin
    read(f,x);
  end;
closefile(f);
beg1:=beg;
writeln('Enter simvol');
readln (x);
uk:=poisk_po_kluchu(x,beg1);
if uk<>nil
then
begin
  writeln ('Yes');
  writeln (uk^.info);
  end
  else writeln ('No');
  readln;

end.