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