Сформировать новый массив из положительных элементов первого массива и элементов второго массива - Pascal ABC
Формулировка задачи:
Сформировать новый массив из положительных элементов первого массива и элементов второго массива, расположенных после самого левого минимального элемента этого массива.
Решение задачи: «Сформировать новый массив из положительных элементов первого массива и элементов второго массива»
textual
Листинг программы
- const
- NMAX = 100;
- var
- a, b: Array[1..NMAX] Of ShortInt;
- c: Array[1..NMAX*2 - 1] Of ShortInt;
- i, min, na, nb, nc: 0..(NMAX - 1)*2;
- begin
- Randomize;
- Write('Введите длину первого массива (1..', NMAX, '): ');
- ReadLn(na);
- nc := 0;
- Write('Первый вектор:');
- for i := 1 to na do
- begin
- a[i] := Random(199) - 99;
- Write(a[i]:4);
- if (a[i] > 0)
- then
- begin
- Inc(nc);
- c[nc] := a[i];
- end;
- end;
- WriteLn;
- Write('Введите длину второго массива (1..', NMAX, '): ');
- ReadLn(nb);
- min := 1;
- Write('Второй вектор:');
- for i := 1 to nb do
- begin
- b[i] := Random(199) - 99;
- Write(b[i]:4);
- if (b[i] < b[min])
- then
- min := i;
- end;
- WriteLn;
- for i := min + 1 to nb do
- begin
- Inc(nc);
- c[nc] := b[i];
- end;
- if (nc > 0)
- then
- begin
- Write(' Новый вектор:');
- for i := 1 to nc do
- Write(c[i]:4);
- WriteLn;
- end
- else
- WriteLn('Новый вектор пуст!');
- end.
Объяснение кода листинга программы
- В начале кода объявляются две переменные типа Array[1..NMAX] Of ShortInt: a и b. Они будут использоваться для хранения первых и вторых элементов массивов соответственно.
- Затем объявляется переменная c типа Array[1..(NMAX*2 - 1) Of ShortInt]. Она будет использоваться для хранения отсортированного массива, состоящего из положительных элементов первого и второго массивов.
- Далее объявляются три переменные i, min и nc. Переменная i будет использоваться для перебора элементов массивов, min - для хранения минимального элемента, а nc - для отслеживания количества положительных элементов в массиве c.
- Затем происходит чтение длины первого массива от пользователя.
- После этого происходит заполнение первого массива случайными числами от 0 до 99. Если число положительное, оно добавляется в массив c.
- Затем пользователь вводит длину второго массива. Аналогично заполняется второй массив случайными числами от 0 до 99.
- После этого происходит поиск минимального элемента во втором массиве. Если такой элемент найден, то все элементы второго массива, начиная с этого индекса, копируются в массив c.
- Если после копирования в массиве c остаются свободные ячейки, выводится сообщение о том, что новый массив пуст.
- Конец программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д