На Горох
Информатика, 10 класс, 11 класс

Накопление статистики

"Информатика (базовый уровень) (в 2 частях)", Под ред. Макаровой Н.В.

Объяснение темы

Кратко о теме

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

Объяснение темы

Текст подготовлен нейронной сетью по теме параграфа и не заменяет учебник — важные факты и формулировки сверяйте с ним.

Определения и обозначения

Статистическое накопление — последовательное получение итоговых сведений о наборе данных во время его обработки. Иными словами, программа не ждёт окончания работы, а постепенно собирает нужные результаты. Это позволяет находить сумму, количество и другие показатели одним последовательным просмотром.

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

Накопитель суммы — переменная, в которой по мере обработки данных сохраняется текущая сумма значений. К уже полученному итогу прибавляют очередное число. Такой накопитель нужен для быстрого вычисления общей суммы и среднего арифметического.

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

Как это устроено

Статистику часто получают за один проход по данным: очередной элемент сразу учитывается в итоговых переменных. Это экономит время и не требует повторно просматривать уже обработанные значения. Такой подход особенно удобен для больших массивов или потока измерений, когда все данные не обязательно хранить отдельно.

Перед началом обработки счётчики и накопители инициализируют нейтральными значениями: для количества и суммы обычно используют ноль. Это необходимо, потому что первая операция должна выполняться над правильным начальным итогом. Если оставить случайное значение, каждый последующий результат будет смещён.

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

Чтобы посчитать элементы, удовлетворяющие условию, каждый элемент сначала проверяют. Счётчик изменяют только при истинном условии, потому что неподходящее значение не должно входить в искомую группу. Например, при подсчёте оценок не ниже 4 значения 2 и 3 просматриваются, но счётчик для них не увеличивается.

После последнего элемента накопленные величины используют для получения новых показателей. Например, среднее арифметическое находят как отношение суммы к количеству: среднее = сумма / количество. Сначала нужно убедиться, что количество не равно нулю, иначе деление невозможно.

Переменные для накопления статистики

Что накапливаетсяНачальное значениеДействие при обработке элементаЧто показывает итог
Количество элементов0Увеличить счётчик на 1Сколько элементов обработано
Сумма значений0Прибавить очередное значениеОбщую сумму элементов
Количество элементов, удовлетворяющих условию0Увеличить счётчик, если условие истинноСколько элементов подходит
Частота каждого значения0 для каждого счётчикаУвеличить счётчик соответствующего значенияСколько раз встретилось значение

В таблице сначала находят смысл итоговой переменной, затем выбирают её начальное значение и действие на каждом шаге. Если требуется несколько независимых характеристик, их накопители обновляют одновременно. Для частот используют отдельный счётчик для каждого значения или группы значений.

Разбор задач

Сумма и количество пяти чисел

Условие: даны пять чисел, требуется определить их сумму и количество. Количество заранее известно, но его всё равно можно получить с помощью счётчика, чтобы показать общий приём. Обозначим накопитель суммы через s, а счётчик через n.

  1. До цикла положим s = 0 и n = 0, потому что обработанных чисел и их суммы пока нет.
  2. Для каждого из пяти чисел прибавим его к s и увеличим n на 1.
  3. После последнего шага выведем s и n; в них находятся итоги всей последовательности.

Ответ: программа получает сумму всех пяти чисел и значение n = 5. Тот же алгоритм подойдёт для набора неизвестной длины, если цикл получает данные до конца ввода.

Оценки не ниже порога

Условие: даны оценки учеников и задан порог, например 4. Нужно узнать, сколько оценок не ниже этого значения. Здесь не требуется складывать оценки: важен только счётчик подходящих элементов.

  1. Установим count = 0, так как в начале ещё ни одна оценка не проверена.
  2. Будем по очереди сравнивать оценку с порогом. Если оценка ≥ порог, увеличим count на 1, а иначе оставим его прежним.
  3. После проверки всех оценок выведем count и получим число результатов, удовлетворяющих условию.

Ответ: значение count равно количеству оценок не ниже заданного порога. Оценки, которые меньше порога, просматриваются, но в итоговый счётчик не попадают.

Среднее и измерения выше него

Условие: даны результаты измерений, требуется найти их среднее и количество значений выше этого среднего. Одного прохода недостаточно: пока среднее не известно, нельзя надёжно проверить условие «выше среднего».

  1. В первом проходе накопим сумму s и количество n, затем вычислим average = s / n, предварительно проверив n ≠ 0.
  2. Во втором проходе сравним каждое измерение с average. Если значение больше среднего, увеличим второй счётчик.
  3. Выведем average и счётчик значений выше него; каждый результат проверяется относительно одного и того же среднего.

Ответ: сначала находятся сумма, количество и среднее, затем отдельным проходом подсчитываются подходящие измерения. Разделение на два прохода нужно потому, что среднее становится известно только после накопления исходных данных.

Типичные ошибки

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

Увеличивают счётчик не в той ветви условия или не увеличивают его для подходящего элемента. Ошибка появляется, когда условие читают наоборот или действие помещают за пределы нужной ветви. Проверьте алгоритм на одном подходящем и одном неподходящем значении.

Путают число обработанных элементов с суммой их значений. Счётчик увеличивают на единицу, а накопитель суммы — на очередное значение, поэтому одинаковая команда для них неверна. Для самопроверки проследите вручную обработку чисел 2 и 5: количество должно стать 2, а сумма — 7.

Вычисляют среднее, не проверив количество элементов. При пустом наборе получается деление на ноль, которое невозможно выполнить. Перед формулой среднее = сумма / количество убедитесь, что количество больше нуля.

Связь с другими темами

Для накопления статистики нужны переменные, присваивание, циклы, условные операторы и арифметические операции. Цикл организует последовательный просмотр, присваивание обновляет итог, а условие отбирает нужные элементы. Без этих базовых конструкций алгоритм нельзя записать и проверить.

Приём применяется при обработке массивов и таблиц, анализе результатов измерений и подсчёте частот. Он помогает находить суммы, средние значения, количество объектов и распределение данных. Поэтому статистическое накопление встречается во многих задачах обработки информации.

Что запомнить

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

Частые вопросы по теме

Чем счётчик отличается от накопителя суммы?

Счётчик хранит количество элементов и обычно увеличивается на единицу. Накопитель суммы хранит итог сложения и увеличивается на значение очередного элемента.

Почему счётчик перед циклом нужно обнулять?

До начала обработки в нём ещё нет учтённых элементов, поэтому начальное количество равно нулю. Если не обнулить переменную, к результату могут добавиться старые или неопределённые данные.

Как посчитать только те значения, которые удовлетворяют условию?

Для каждого элемента выполняют проверку условия. Если оно истинно, счётчик увеличивают на единицу, а при ложном результате оставляют без изменения.

Можно ли накопить сумму и количество за один проход?

Да, можно. При обработке каждого элемента одновременно прибавляют его к сумме и увеличивают счётчик количества.

Что делать, если набор данных пуст?

Сумма и количество останутся равными нулю. Среднее вычислять нельзя, потому что возникнет деление на ноль; сначала нужно проверить, что количество элементов больше нуля.

Спросить по теме параграфа

Накопление статистики

Учебник

Оглавление →
Предмет
Информатика
Класс
10 класс, 11 класс
Учебник
"Информатика (базовый уровень) (в 2 частях)", Под ред. Макаровой Н.В.