Все разделы
Выбрать школу

Школа. Увлечения. Большое будущее.

PROSCHOOLS · ОБРАЗОВАНИЕ РЯДОМ

Ваш город

Выберите город, чтобы находить образование и возможности рядом.

Как учитываем городКаталог и кнопки «Выбрать школу» покажут школы выбранного города.Онлайн-курсы, учебник, ГДЗ и задания к экзаменам доступны по всей России.

Популярные города

Будет выбран: Вся Россия

Учебные материалы останутся прежними.

Поиск по сайту

По всему сайтуШколы выбранного города — выше в результатах

С чего начнём?

↑ ↓ — выбрать результат · Enter — открыть · Esc — закрыть

Среднее арифметическое элементов массива

💻 Информатика · 8 класс

Как вычислить среднее арифметическое чисел в массиве: накопление суммы в цикле и деление на количество.

Клавиатура в компьютерном классе
Иллюстрация к предмету «Информатика»Hmartil · Wikimedia Commons · CC BY-SA 4.0

Постановка задачи

Среднее арифметическое набора чисел — это их сумма, делённая на количество чисел. Для массива это одна из самых частых задач обработки данных. С её помощью находят средний балл ученика, среднюю температуру за неделю, средний рост в классе. Задача хороша тем, что соединяет два базовых приёма работы с массивом: накопление суммы и итоговое деление.

План решения

Задача естественно распадается на два понятных шага:

  1. пройти по всем элементам массива в цикле и накопить их сумму в отдельной переменной;
  2. разделить полученную сумму на число элементов.

Накопление суммы — это уже знакомый приём: заводят переменную-накопитель, обязательно обнуляют её перед циклом, а затем в цикле прибавляют к ней каждый элемент по очереди.

Разбор на примере

Пусть массив содержит оценки: 4, 5, 3, 5, 3. Всего элементов пять. Проследим, как растёт сумма.

ШагЭлементСумма
144
259
3312
4517
5320

Сумма всех оценок равна 20, элементов 5, значит среднее равно 20 / 5 = 4. Средний балл получился целым, но так бывает не всегда.

Запись алгоритма

сумма = 0 для i от 1 до n сумма = сумма + a[i] конец среднее = сумма / n

Результат деления, как правило, хранят в вещественной переменной, ведь среднее часто оказывается дробным. Например, среднее чисел 5 и 2 равно 3.5 — целочисленная переменная такое значение хранить не сможет.

Среднее не по всем элементам

Иногда среднее нужно вычислить не по всему массиву, а только по элементам, удовлетворяющим условию: например, средний балл лишь по положительным оценкам или средняя цена только товаров дороже ста рублей. Тогда в цикле заводят два накопителя — отдельно сумму подходящих элементов и отдельно их количество. В конце сумму делят на это количество. Здесь важно следить, чтобы количество не оказалось нулём, иначе деление станет невозможным: если ни один элемент не подошёл под условие, среднее попросту не определено, и программа должна сообщить об этом, а не пытаться делить на ноль.

Частые ошибки. Не выполняйте деление внутри цикла — оно нужно только один раз, после того как накоплена вся сумма. Используйте обычное (вещественное) деление, а не целочисленное, иначе дробная часть среднего потеряется. И помните: делить нужно на количество элементов n, а не на индекс последнего шага, если индексация в массиве начинается не с единицы.

Кратко о главном

  • Среднее арифметическое — сумма чисел, делённая на их количество.
  • Сначала в цикле накапливают сумму всех элементов.
  • Затем сумму делят на число элементов массива.
  • Деление выполняют один раз, уже после цикла.
  • Результат хранят в вещественной переменной.
  • Накопитель суммы обязательно обнуляют до цикла.