Найти сумму квадратов всех ненулевых элементов одномерного массива - Turbo Pascal
Формулировка задачи:
Решите, пожалуйста.
Задан одномерный массив A. Найти сумму квадратов всех его ненулевых элементов. Размерность массива 20. Заполнение массива осуществить случайными числами от -25 до 25
Решение задачи: «Найти сумму квадратов всех ненулевых элементов одномерного массива»
textual
Листинг программы
const
N = 20;
A = -25;
B = 25;
var
ar: Array[1..N] Of ShortInt;
sum: Word;
i: 1..N;
begin
Randomize;
Write('Исходный массив:');
sum := 0;
for i := 1 to N do
begin
ar[i] := Random(B - A + 1) + A;
Write(ar[i]:4);
Inc(sum, Sqr(ar[i]) * Ord(ar[i] <> 0));
end;
WriteLn;
WriteLn('sum=', sum);
end.
Объяснение кода листинга программы
В данном коде объявлены следующие переменные:
- N - количество элементов в массиве (в данном случае 20).
- A - минимальное значение, которое может быть в массиве (в данном случае -25).
- B - максимальное значение, которое может быть в массиве (в данном случае 25).
- ar - одномерный массив, в котором будут храниться значения (тип данных ShortInt).
- sum - переменная для хранения суммы квадратов ненулевых элементов массива (тип данных Word).
- i - переменная для итерации по элементам массива (диапазон от 1 до N). В начале кода генерируется случайное значение для каждого элемента массива в диапазоне от A до B. Затем вычисляется сумма квадратов ненулевых элементов массива. Для этого в цикле for перебираются все элементы массива, вычисляется квадрат текущего элемента, а затем это значение добавляется к сумме с учетом того, что ненулевые элементы увеличивают сумму на 1. После завершения цикла выводится исходный массив, а также значение суммы.