Тема: Допоможіть переробити програму (дерева)
мені потрібно сформувати дерево речення: ""Пливуть осінні тихі небеса". Вузол "тихі" замінити на вузол "білі".
Нижче програма яка доставляє вузол, а мені треба щоб мінявся вузол.
Допоможіть будь ласка!
program derevo;
uses crt;
type der=^pointer;
pointer=record
kl:integer;
zap: string[15];
pr, lv: der;
end;
var vs, vl, q:der;
tekst: string[15];
kluth:integer;
procedure vderevo;
begin
vl:=vs;
repeat
while kluth > vl^.kl do
begin
if vl^.pr=nil then
begin
new(vl^.pr);
vl:=vl^.pr;
vl^.kl:=kluth;
vl^.zap:=tekst;
vl^.lv:=nil;
vl^.pr:=nil;
end else
vl:=vl^.pr;
end;
while kluth< vl^.kl do
begin
if vl^.lv=nil then
begin
new(vl^.lv);
vl:=vl^.lv;
vl^.kl:=kluth;
vl^.zap:=tekst;
vl^.pr:=nil;
vl^.lv:=nil;
end else
vl:=vl^.lv;
end;
until kluth=vl^.kl;
end;
begin
clrscr;
new(vs);
vs^.zap:='речення';
vs^.kl:=100;
vs^.pr:=nil;
vs^.lv:=nil;
writeln('Kluch Text');
repeat
readln(kluth, tekst);
vderevo;
until kluth=0;
writeln(' Котята 1'); writeln;
vl:=vs;
writeln(' ',vl^.zap);
writeln(' /\');
writeln(' / \');
writeln(' / \');
writeln(' / \');
writeln(' / \');
writeln(' / \');
writeln(' ',vl^.lv^.zap,' ',vl^.pr^.zap);
writeln(' / \');
writeln(' / \');
writeln(' / \');
writeln(' / \');
writeln(' / \');
writeln(' / \');
writeln(' ',vl^.lv^.lv^.zap,' ',vl^.pr^.pr^.zap);
writeln;
writeln('Press any key ...');
readkey;
writeln;
kluth:=75;
tekst:='білі ';
vderevo;
writeln(' binarne derevo 2'); writeln;
vl:=vs;
writeln(' ',vl^.zap);
writeln(' /\');
writeln(' / \');
writeln(' / \');
writeln(' / \');
writeln(' / \');
writeln(' / \');
writeln(' ',vl^.lv^.zap,' ',vl^.pr^.zap);
writeln(' / \ \');
writeln(' / \ \');
writeln(' / \ \');
writeln(' / \ \');
writeln(' / \ \');
writeln(' / \ \');
writeln(' ',vl^.lv^.lv^.zap,' ',vl^.lv^.pr^.zap,' ',vl^.pr^.pr^.zap);
writeln;
writeln('Press any key ...');
readkey;
writeln;
end.