aydar
04.06.2010, 15:43
ребят помогите со списком надо удалить с заданного элемента (k) n элементов, вот такой список
{Dobavitb v pyctou spisok k elementov u dobavitb 1 new element posle zadannogo}
uses crt;
type
Tpel=^element;
element=record
num:integer;
p:tpel;
end;
var
first,n,f,q:tpel;
i,j,j2,zn:integer;
k:byte;
begin
clrscr;
randomize;
new(first);
f:=first;
writeln('CkolbKo elementov v Spiske ');
readln(k);
writeln('<--------->');
for i:=1 to k do begin
f^.num:=random(9)+1;
new(f^.p);
f:=f^.p;
end;
f^.p:=nil;
f:=first;
while(f^.p<>nil) do
begin
writeln(f^.num);
f:=f^.p;
end;
writeln(' posle kakogo elementa vstavitb element? ');
readln(j);
writeln(' kakoe zna4enie? ');
readln(zn);
f:=first;
j2:=0;
while (f^.p<>nil)and(j2<>j) do begin
inc(j2);
if j2=j then begin
n:=f^.p;
new(f^.p);
q:=f^.p;
q^.num:=zn;
q^.p:=n;
end else f:=f^.p;
end;
f:=first;
writeln('<--------->');
while(f^.p<>nil) do begin
writeln(f^.num);
f:=f^.p;
end;
writeln ('Press key for Exit');
readln;
end.
вот после этого надо удалить элементы, паскаль, если можно прокомментируети ваши действия
{Dobavitb v pyctou spisok k elementov u dobavitb 1 new element posle zadannogo}
uses crt;
type
Tpel=^element;
element=record
num:integer;
p:tpel;
end;
var
first,n,f,q:tpel;
i,j,j2,zn:integer;
k:byte;
begin
clrscr;
randomize;
new(first);
f:=first;
writeln('CkolbKo elementov v Spiske ');
readln(k);
writeln('<--------->');
for i:=1 to k do begin
f^.num:=random(9)+1;
new(f^.p);
f:=f^.p;
end;
f^.p:=nil;
f:=first;
while(f^.p<>nil) do
begin
writeln(f^.num);
f:=f^.p;
end;
writeln(' posle kakogo elementa vstavitb element? ');
readln(j);
writeln(' kakoe zna4enie? ');
readln(zn);
f:=first;
j2:=0;
while (f^.p<>nil)and(j2<>j) do begin
inc(j2);
if j2=j then begin
n:=f^.p;
new(f^.p);
q:=f^.p;
q^.num:=zn;
q^.p:=n;
end else f:=f^.p;
end;
f:=first;
writeln('<--------->');
while(f^.p<>nil) do begin
writeln(f^.num);
f:=f^.p;
end;
writeln ('Press key for Exit');
readln;
end.
вот после этого надо удалить элементы, паскаль, если можно прокомментируети ваши действия