Использовать список при следующем его описании:   Type AdrCel=^Element; Element=record Info:integer; Next:AdrCel; End;   Составить процедуру, которая удаляет из списка второй элемент, если такой есть. ХЭЛП МИ

Вопрос пользователя:

Использовать список при следующем его описании:

 

Type AdrCel=^Element;
Element=record
Info:integer;
Next:AdrCel;
End;

 

Составить процедуру, которая удаляет из списка второй элемент, если такой есть.


ХЭЛП МИ

Илюха отвечает:

type
adrcel=^Element;
Element=record
info:integer;
next:adrcel;
end;
var
start,last,new_el:adrcel;
i:integer;

procedure del2(var start:adrcel);

var

p:adrcel;

begin

p:=start^.next;

if p<>nil then start^.next:=p^.next

end;

begin
start:=nil;
last:=nil;
new_el:=nil;
repeat
new(new_el);
write(‘info=’);
readln(new_el^.info);

new_el^.next:=nil;
if start=nil then
start:=new_el;
else
begin

last:=start;

while last^.next<>nil do last:=last^.next;
last^.next:=new_el;
end;
write(‘Продолжить? (1-Да/0-Нет):’);
readln(i);
until i=0;
writeln(‘Удалим 2-й элемент’);

del2(start);

new_el:=start;
while new_el<>nil do
begin
write(new_el^.info:4);
new_el:=new_el^.next;
end;
readln;
end.

Добавить свой ответ