1. Даны два одномерных массива разной размерности. Для каждого из данных одномерных

1. Даны два одномерных массива разной размерности. Для каждого из данных одномерных массивов выполнить: поочередно переписать в иной массив отрицательные элементы исходного массива.
с применение подпрограмм и процедур желанно

Задать свой вопрос
1 ответ
Const
  nn = 20;

type
  ta = array[1..nn] of integer;

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] lt; 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.

Тестовое решение:
Начальный массив
 -12  17  35  -4 -45   8  33  -8 -47  -4
Массив из отрицательных частей
 -12  -4 -45  -8 -47  -4
Начальный массив
 -150 -174   92 -168   69  -60 -165  -78  -47   -4    0    0
Массив из отрицательных элементов
 -150 -174 -168  -60 -165  -78  -47   -4


, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт