P
pro·school.ru
Каталог школ

Накопление суммы и произведения в цикле

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

Накопление суммы и произведения

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

Накопление суммы

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

сумма = 0

для i от 1 до n:

  сумма = сумма + a[i]

Команда сумма = сумма + a[i] читается так: «новое значение суммы равно прежней сумме плюс очередной элемент». Переменная как бы «растёт» с каждым шагом цикла.

Накопление произведения

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

произв = 1

для i от 1 до n:

  произв = произв * a[i]

НакопительНачальное значениеОперация в цикле
сумма0прибавление элемента
произведение1умножение на элемент
количество (счётчик)0увеличение на единицу

Связанные задачи

На основе накопления решают много задач:

  • счётчик — подсчёт количества элементов с нужным свойством (например, положительных);
  • среднее арифметическое — сумма, делённая на количество элементов;
  • факториал — произведение всех чисел от 1 до n;
  • сумма с условием — складывают только подходящие элементы.

Проследим накопление суммы для набора 3, 5, 2 по шагам:

сумма=0 → +3 → 3 → +5 → 8 → +2 → 10

Итоговое значение суммы равно 10. Если бы вместо суммы мы копили произведение, получили бы 1 * 3 * 5 * 2 = 30.

Накопление с условием

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

сумма = 0

для i от 1 до n:

  если a[i] > 0, то сумма = сумма + a[i]

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

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

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

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