Найти сумму и количество элементов, абсолютное значение которых больше среднеарифметического - Pascal ABC
Формулировка задачи:
Ввести целочисленный массив, состоящий из 17 элементов. Найти сумму и количество элементов, абсолютное значение которых больше среднеарифметического положительных элементов.
Решение задачи: «Найти сумму и количество элементов, абсолютное значение которых больше среднеарифметического»
textual
Листинг программы
var mass: array [0..16] of integer; i,k,sum:integer; sred:real; BEGIN for i:=0 to 16 do begin write('Введите [',i+1,'] элемент массива: '); readln(mass[i]); end; sum:=0; k:=0; for i:=0 to 16 do begin if mass[i]>0 then begin inc(k); sum:=sum+mass[i]; end; end; sred:=sum/k; sum:=0; k:=0; for i:=0 to 16 do begin if abs(mass[i])>sred then begin inc(k); sum:=sum+mass[i]; end; end; writeln('Сумма = ',sum,', количество = ',k); END.
Объяснение кода листинга программы
- Создается переменная
mass
, которая представляет собой массив из 17 элементов типаinteger
. - Создаются три переменные
i
,k
иsum
, которые будут использоваться для итерации по массиву и подсчета суммы и количества элементов. - Создается переменная
sred
, которая будет использоваться для хранения среднего арифметического. - Запускается цикл
for
, который итерируется от 0 до 16 (используется индекс от 0 до 16 включительно). - Внутри цикла
for
происходит следующее:- Пользователю предлагается ввести элемент массива (с помощью функции
write
иreadln
). - Элемент массива сохраняется в соответствующую переменную
mass[i]
. - Переменная
sum
инициализируется значением 0, а переменнаяk
- значением 0. Это будет использоваться для подсчета суммы и количества элементов соответственно. - Если значение элемента массива больше 0, то увеличивается значение переменной
k
, сумма элементов увеличивается на единицу и текущий элемент добавляется в сумму. - После завершения внутреннего цикла
for
, значение переменнойsred
вычисляется как среднее арифметическое всех элементов массива.
- Пользователю предлагается ввести элемент массива (с помощью функции
- Запускается еще один цикл
for
, который итерируется от 0 до 16. - Внутри цикла
for
происходит следующее:- Если абсолютное значение элемента массива больше значения переменной
sred
, то увеличивается значение переменнойk
, сумма элементов увеличивается на единицу и текущий элемент добавляется в сумму.
- Если абсолютное значение элемента массива больше значения переменной
- После завершения внутреннего цикла
for
, выводится сообщение с суммой и количеством элементов. - Конец программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д