Удаляет из массива все элементы с заданным значением:
{$APPTYPE CONSOLE}
Const
N = 10;
Type
Mass = array[1..N] of integer;
Procedure BBOD(Var A:Mass; N:integer);
Var i:integer;
Begin
For i:= 1 to N do
Read(A[i]);
End;
Procedure BBODRND(Var A:Mass; N:integer);
Var i:integer;
Begin
Randomize;
For i:= 1 to N do
A[i]:=random(21)-10;
End;
Procedure BbIBOD(Var A:Mass; N:integer);
Var i:integer;
Begin
Write('Mass(',N,'):');
For i:= 1 to N do
Write(' ',A[i]);
WriteLn;
End;
Procedure DLT(Var A:Mass; Var k:integer; N:integer);
Var i,m,D:integer;
Begin
Write('D = ');ReadLn(D);
k:=0;
For i:= 1 to N do
if A[i] = D then k:=k+1;
For m:= 1 to k do
Begin
i:=1;
While (A[i] <> D) do i:=i+1;
For i:= i to N-m do
A[i]:=A[i+1]
End;
End;
Var
A:Mass;
k:integer;
Begin
BBODRND(A,N);
BbIBOD(A,N);
DLT(A,k,N);
BbIBOD(A,N-k);
ReadLn
End.