Cоставить процедуру вычисления суммы четных по значению элементов в одномерном массиве - Turbo Pascal
Формулировка задачи:
составить процедуру вычисления суммы четных по значению элементов в одномерном массиве
Решение задачи: «Cоставить процедуру вычисления суммы четных по значению элементов в одномерном массиве»
textual
Листинг программы
procedure SumEven(const a: array of Integer; var s: Integer);
var i: Integer;
begin
s:=0; for i:=Low(a) to High(a) do if not Odd(a[i]) then s:=s+a[i];
end;
var
a: array [1..10] of Integer;
i, s: Integer;
begin
Randomize;
for i:=Low(a) to High(a) do a[i]:=Random(100);
Write('A= '); for i:=Low(a) to High(a) do Write(' ',a[i]); WriteLn;
SumEven(a,s); WriteLn('Сумма четных: ',s);
end.
Объяснение кода листинга программы
- В начале объявляются переменные
a,iиs. Переменнаяaявляется массивом целых чисел, переменнаяi- целочисленной переменной-счетчиком, а переменнаяs- целочисленной переменной для хранения суммы. - Затем идет описание процедуры
SumEven, которая принимает массивaи переменнуюsв качестве параметров. Внутри процедуры объявляется внутренний счетчикiи начальное значение суммыsустанавливается равным нулю. - Далее начинается цикл
for, который проходит по всем элементам массиваaотLow(a)доHigh(a). Если текущий элемент массива не является четным (то есть, если он не равенOdd(a[i])), то значениеsувеличивается на текущий элемент массиваa[i]. - После завершения цикла
forзначение переменнойsбудет содержать сумму всех четных элементов массиваa. - Затем в основной части программы объявляется массив
aтипаarray [1..10] of Integerи инициализируется случайными числами от 0 до 99 с помощью функцииRandomize. - Выводится сообщение с начальным содержимым массива
aс помощью функцииWrite. - Вызывается процедура
SumEvenс массивомaи переменнойsв качестве аргументов. Значение переменнойsобновляется с суммой четных элементов массиваa. - Наконец, выводится сообщение с результатом вычисления суммы четных элементов массива
aс помощью функцииWriteLn.