Главная » Дан целочисленный массив из 30 элементов...
15:12

Дан целочисленный массив из 30 элементов...


Задание:

Дан целочисленный массив из 30 элементов. Элементы массива могут принимать значения от  –1000 до 1000. Опишите на русском языке или на одном из языков программирования алгоритм, который находит и выводит среднее арифметическое всех элементов массива, оканчивающихся цифрой 5. Гарантируется, что хотя бы один такое элемент в массиве есть. 
Исходные данные объявлены так, как показано ниже. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать часть из них.

const N=30; 
var a: array [1..N] of integer; 
    i, x, y: integer; 
    s: real; 
begin
  for i:=1 to N do readln(a[i]); 
  ...
end.

Решение:

Недостающий фрагмент:

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 на экран.


Похожие материалы:
Нашли ошибку на сайте? Напишите в комментариях!
Категория: Язык программирования: Паскаль | Просмотров: 1118 | Добавил: Ученик | Рейтинг: 5.0/1