Нужно написать программу в паскале и без константы.
Дан целочисленный массив из 30 элементов. Элементы массива могут принимать значения от10 до 1000. Опишите на русском языке или на одном из языков программирования алгоритм, который позволяет подсчитать и вывести среднее арифметическое элементов массива, оканчивающихся на цифру 5.
Answers & Comments
Ответ:
x:=0; y:=0;
for i:=1 to N do
if abs (A[i]) mod 10 = 5 then begin
x:= x + A[i];
y:= y+1;
end;
s:= x/y;
Writeln(s);
Объяснение:
В переменной X программу будет считать общую сумму элементов массива, оканчивающихся на 5. В переменной Y программа будет считать количество таких элементов. Изначально присваиваем им значения 0.
* Далее в цикле for от 1 до 30 элементов проверяем оканчивается ли элемент на 5. Функция abs означает модуль, оно вводится для отрицательных чисел:
Пример: -15 mod 10 программа выдаст -5, но по условию -15 нам тоже подходит, так как оно оканчивается на 5, поэтому следует проверять модуль отрицательных чисел.
* Если остаток от деления на 10 равен 5, тогда мы к предыдущему значению X прибавляем значение найденного элемента. Также увеличиваем количество, то есть переменную Y.
* По окончанию цикла находим среднее арифметическое делением общей суммы на количество и сохраняем значение в переменной S.
* Выводим значение переменной S на экран