Люди!! Помогите!!! Я пытаюсь понять теорию графов... У меня возник вопрос по поводу алгоритма задания бинарного дерева и наглядного вывода на экран... задается с помощью ranom'а или с клавиатуры.Кто-нибудь может подсказать алгоритм?(я пытался сделать через рекурсию...чуть не спалил себе мозги...).Прикрепляю то, что уже успел нароботать
uses crt;
type
ukaz=^object1;
stroka=string[80];
object1=record
stroki:stroka;
ukrnext1:ukaz;
ukrnext2:ukaz;
end;
var ukrtek,ukr0, sled, pred, ukrzak:ukaz;
st: stroka;
a,b,c:integer;
{ procedure print;
begin
ukrtek:=ukr0;
while ukrtek^.ukrnext<>nil do begin
Ukrtek:=Ukrtek^.ukrNext;
writeln(Ukrtek^.stroki);
End;
end; }function sozd1:ukaz;
var st:string;
n:ukaz;
begin
readln (st);
ifnot(st='') thenbegin
new(n);
sozd1:=n;
n^.stroki:=st;
n^.ukrnext1:=sozd1;
endelsebegin
sozd1:=nil;
ukr0:=sozd2;
end;
end;
function sozd2:ukaz;
var st:string;
n:ukaz;
begin
readln (st);
ifnot(st='') thenbegin
new(n);
sozd1:=n;
n^.stroki:=st;
n^.ukrnext1:=sozd1;
endelsebegin
sozd2:=nil;
ukr0:=sozd1;
end;
begin
clrscr;
new(ukr0);
ukrtek:=ukr0;
ukrtek^.ukrnext1:=nil;
ukrtek^.ukrnext2:=nil;
readln(st);
ukrtek^.stroki:=st;
print;
{ readln(a);
readln(st);
new(sled);
ukrtek:=ukr0;
while (ukrtek^.ukrnext<>nil) and (b<2) do begin
b:=b+1;
pred:=ukrtek;
ukrtek:=ukrtek^.ukrnext;
end;
sled^.ukrnext:=ukrtek;
sled^.stroki:=st;
pred^.ukrnext:=sled; }
print;
end.
volvo
1.03.2007 1:42
Ну, допустим, мозги ты себе-таки спалил:
Цитата(Правила Раздела)
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!