Uses
CRT;
Var
a,b,a2,b2:array[1..22] of integer;
i,kol,kol2:integer;
Begin
randomize;
kol:=0;
kol2:=0;
writeln('Исходный массив А: ');
for i:=1 to 10 do
begin
a[i]:=random(10)-3;
write(a[i]:3);
if a[i]>0 then
begin
inc(kol);
a2[kol]:=a[i];
end
else
if a[i]<0 then
begin
inc(kol2);
b2[kol2]:=a[i];
end
end;
writeln;
writeln('Исходный массив B: ');
for i:=1 to 12 do
begin
b[i]:=random(15)-5;
write(b[i]:3);
if b[i]>0 then
begin
inc(kol);
a2[kol]:=b[i];
end
else
if b[i]<0 then
begin
inc(kol2);
b2[kol2]:=b[i];
end
end;
writeln;
writeln('Результирующий массив А2: ');
for i:=1 to kol do
write(a2[i]:3);
writeln;
writeln('Результирующий массив В2: ');
for i:=1 to kol2 do
write(b2[i]:3);
readln;
End.
Следующий вариант
Uses
CRT;
Type
mas = array [1 .. 22] of integer;
Var
a, b, a2, b2: mas;
i, kol, kol2: integer;
Procedure masiv(Var l: mas; k, g, g2: integer; c: char);
begin
writeln('vvedite ', c, ': ');
for i := 1 to k do
begin
l[i] := random(g) - g2;
write(l[i]:3);
if l[i] > 0 then
begin
inc(kol);
a2[kol] := l[i];
end
else if l[i] < 0 then
begin
inc(kol2);
b2[kol2] := l[i];
end
end;
writeln;
end;
procedure vivod(Var l: mas; k: integer; c: string);
begin
writeln('vvedite ', c, ': ');
for i := 1 to k do
write(l[i]:3);
writeln;
end;
Begin
randomize;
kol := 0;
kol2 := 0;
masiv(a, 10, 10, 3, 'A');
masiv(b, 12, 15, 5, 'B');
vivod(a2, kol, 'A2');
vivod(b2, kol2, 'B2');
readln;
End.