1. даны два одномерных массива разной размерности. для каждого из заданных одномерных массивов выполнить: последовательно переписать в другой массив отрицательные элементы начального массива. с применение подпрограмм и процедур желательно
procedure FillArray(var a: ta; n, min, max: integer); var i, k: integer; begin k := max - min + 1; for i := 1 to n do a[i] := Random(k) + min end;
procedure WriteArray(a: ta; n, p: integer); var i: integer; begin for i := 1 to n do Write(a[i]:p); Writeln end;
procedure CopyNegative(var a, b: ta; m: integer; var n: integer); var i: integer; begin n := 0; for i := 1 to m do if a[i] < 0 then begin Inc(n); b[n] := a[i] end end;
var n: integer; x, y: ta;
begin Randomize; FillArray(x, 10, -50, 50); Writeln('Исходный массив'); WriteArray(x, 10, 4); CopyNegative(x, y, 10, n); Writeln('Массив из отрицательных элементов'); WriteArray(y, n, 4); FillArray(x, 8, -200, 100); Writeln('Исходный массив'); WriteArray(x, 12, 5); CopyNegative(x, y, 12, n); Writeln('Массив из отрицательных элементов'); WriteArray(y, n, 5); end.