Добавил:
Источник:
Uman
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:01 семестр / К экзамену-зачёту / Все задачи с экзамена в формате PAS / Динамической память / SPIS2
.PAS program laba4;
uses crt;
type
address=^zap;
zap=record
fio:char;
p:address;
end;
var
t,q,f,rab,main:address;
k,n,l:integer;
procedure vvod;
begin
writeln('skolko el-tov');
readln(n);
new(main);
main^.p:=nil;
k:=0;
repeat
new(rab);
writeln('frdf');
readln(rab^.fio);
rab^.p:=main;
main:=rab;
k:=k+1;
until k=n;
end;
procedure vivod;
begin
rab:=main;
while rab<>nil do
begin
writeln;
write(rab^.fio);
rab:=rab^.p;
end;
end;
procedure udal;
begin
writeln('kakou udal');
readln(l);
rab:=main;
for k:=n-1 downto l do
begin
rab:=rab^.p;
end;
f:=rab^.p;
rab:=main;
for k:=n-1 downto l+1 do
begin
rab:=rab^.p;
end;
rab^.p:=f;
end;
procedure vstavka;
begin
writeln('posle kakogo vstavit');
readln(l);
rab:=main;
for k:=n downto l+2 do
begin
rab:=rab^.p;
end;
f:=rab^.p;
new(q);
writeln('fam');
readln(q^.fio);
q^.p:=f;
rab:=main;
for k:=n downto l+2 do
begin
rab:=rab^.p;
end;
rab^.p:=q;
end;
begin
clrscr;
vvod;
vivod;
readln;
clrscr;
udal;
vivod;
{vstavka;
vivod;}
readln;
end.
uses crt;
type
address=^zap;
zap=record
fio:char;
p:address;
end;
var
t,q,f,rab,main:address;
k,n,l:integer;
procedure vvod;
begin
writeln('skolko el-tov');
readln(n);
new(main);
main^.p:=nil;
k:=0;
repeat
new(rab);
writeln('frdf');
readln(rab^.fio);
rab^.p:=main;
main:=rab;
k:=k+1;
until k=n;
end;
procedure vivod;
begin
rab:=main;
while rab<>nil do
begin
writeln;
write(rab^.fio);
rab:=rab^.p;
end;
end;
procedure udal;
begin
writeln('kakou udal');
readln(l);
rab:=main;
for k:=n-1 downto l do
begin
rab:=rab^.p;
end;
f:=rab^.p;
rab:=main;
for k:=n-1 downto l+1 do
begin
rab:=rab^.p;
end;
rab^.p:=f;
end;
procedure vstavka;
begin
writeln('posle kakogo vstavit');
readln(l);
rab:=main;
for k:=n downto l+2 do
begin
rab:=rab^.p;
end;
f:=rab^.p;
new(q);
writeln('fam');
readln(q^.fio);
q^.p:=f;
rab:=main;
for k:=n downto l+2 do
begin
rab:=rab^.p;
end;
rab^.p:=q;
end;
begin
clrscr;
vvod;
vivod;
readln;
clrscr;
udal;
vivod;
{vstavka;
vivod;}
readln;
end.
Соседние файлы в папке Динамической память