Из массива А сформировать массив B - Pascal
Формулировка задачи:
Дано: массив А(N). Сформировать новый массив В, состоящий из нечетных элементов массива А и найти в нем сумму элементов.
Решение задачи: «Из массива А сформировать массив B»
textual
Листинг программы
var
a, b: Array[Byte] Of ShortInt;
i, na, nb: Byte;
sum: Integer;
begin
repeat
Write('Введите длину вектора А (1..255): ');
ReadLn(na);
until (na > 0);
Randomize;
nb := 0;
sum := 0;
Write('Вектор А:');
for i := 0 to na - 1 do
begin
a[i] := Random(199) - 99;
Write(a[i]:4);
if Odd(a[i])
then
begin
b[nb] := a[i];
Inc(nb);
Inc(sum, a[i]);
end;
end;
WriteLn;
if (nb > 0)
then
begin
Write('Вектор B:');
for i := 0 to nb - 1 do
Write(b[i]:4);
WriteLn;
WriteLn('Сумма: ', sum);
end
else
WriteLn('Вектор B пуст!');
end.
Объяснение кода листинга программы
- Объявление переменных:
a,b: массивы байт (массивы целых чисел от -128 до 127);i,na,nb: переменные типа байт (целые числа от 0 до 255);sum: переменная типа Integer (целое число от -2,147,483,648 до 2,147,483,647).
- Ввод длины вектора А:
- Запрос на ввод длины вектора А в диапазоне от 1 до 255.
- Инициализация генератора случайных чисел:
- Начало использования случайных чисел.
- Инициализация переменных:
nbиsumустанавливаются в 0 - для подсчета количества и суммы элементов вектора B.
- Заполнение вектора А случайными числами:
- Генерация случайного числа от -99 до 99 для каждого элемента вектора А.
- Вывод элементов вектора А на экран.
- Если элемент является нечётным числом:
- Добавление его в вектор B.
- Увеличение счётчика элементов вектора B (nb).
- Увеличение суммы на значение данного элемента.
- Вывод вектора B и суммы:
- Если в векторе B есть элементы:
- Вектор B и его сумма выводятся на экран.
- Если вектор B пуст:
- Выводится сообщение о том, что вектор B пуст.
- Если в векторе B есть элементы: