procedure del p1 list value var list begin p1 if nil then break while

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
procedure del(p1:list, a:value);
var p,i:list
begin
i:=p1;
if i=nil then break;
while(i^.data<>a)) do i:=i^.next;
p:=i;
i:=i^.next;
dispose(p);
end;