ОГЭ · Python≈ 4 мин чтенияБесплатно

Сумма и количество в Python: циклы и задачи для подготовки к ОГЭ

В задачах на обработку чисел легко перепутать «сколько подходящих» и «чему равна их сумма». Разберём две переменные, проследим цикл по строкам и составим программу, которая читает данные с клавиатуры.

Сразу к самопроверке
Отличать сумму от количества
Отличать сумму от количества · от схемы к решению
ШАГ 01

Две переменные — два разных вопроса

В наборе 4, −3, 8, 5, 0 два положительных чётных числа: 4 и 8. Их количество — 2, а сумма — 12. Ноль чётный, но не положительный, поэтому не подходит.

  • k — количество: при подходящем числе прибавляем 1.
  • s — сумма: при подходящем числе прибавляем само число.

ПРОСЛЕДИТЕ ИЗМЕНЕНИЕ ПЕРЕМЕННЫХ

Перебираем числа от 1 до n включительно. Считаем и складываем только чётные.

iЧётное?Количество kСумма s
1нет00
2да12
3нет12
4да26
5нет26
6да312

Количество: 3. Сумма: 12.

Строка показывает состояние после обработки числа i. Без JavaScript доступна таблица для n = 6.

ШАГ 02

Цикл с условием: от 1 до n

Начнём с учебного примера: считаем количество и сумму чётных чисел от 1 до n включительно. Для n = 6 подходят 2, 4 и 6: количество 3, сумма 12.

n = 6
k = 0
s = 0

for i in range(1, n + 1):
    if i % 2 == 0:
        k += 1
        s += i

print(k, s)  # 3 12

Правая граница range не включается, поэтому написано n + 1. Если забыть единицу, число n не будет обработано. Подробности — в разборе range и ввода.

ШАГ 03

Как читать таблицу выполнения

Одна строка таблицы — один проход цикла. В ней записано состояние переменных после проверки текущего числа.

  1. До цикла k = 0 и s = 0.
  2. На i = 1 условие ложно: ничего не меняется.
  3. На i = 2 условие истинно: k становится 1, s становится 2.
  4. На i = 3 снова ничего не меняется.
  5. На i = 4 получаем k = 2, s = 6.

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

ШАГ 04

Если числа вводят с клавиатуры

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

n = int(input())
k = 0
s = 0

for _ in range(n):
    x = int(input())
    if x > 0 and x % 2 == 0:
        k += 1
        s += x

print(k, s)

Пример ввода:

5
4
-3
8
5
0

Вывод: 2 12. Цикл выполняется n раз; переменная x — очередное введённое число. Не подставляйте номер прохода вместо x.

Если по условию все числа находятся в одной строке, ввод будет другим: numbers = list(map(int, input().split())), затем for x in numbers:. Читайте формат входных данных.

ШАГ 05

Почему отступы меняют ответ

Где строкаЧто произойдёт
k = 0 и s = 0 до циклаПеременные сохраняют накопленный результат.
k = 0 и s = 0 внутри циклаРезультат стирается на каждом проходе.
k += 1 внутри ifСчитаются только подходящие числа.
k += 1 снаружи if, но в циклеСчитаются все обработанные числа.
print после циклаВыводится один окончательный результат.

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

ШАГ 06

Проверка на трёх маленьких наборах

Для программы с положительными чётными числами проверьте разные случаи:

  • Ни одно не подходит: −2, 0, 3 → количество 0, сумма 0.
  • Все подходят: 2, 4, 8 → количество 3, сумма 14.
  • Смешанный набор: 4, −3, 8, 5, 0 → количество 2, сумма 12.

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

ШАГ 07

Что повторить и где потренироваться

Запустите пример в Python онлайн, измените условие на «число делится на 3» и сначала вручную предскажите ответ. Следующий шаг — задачи на чтение кода.

Поведение цикла и диапазона описано в официальном учебнике Python. Формат экзамена проверяйте в материалах ФИПИ по ОГЭ. Здесь приведены авторские учебные задачи, а не официальный вариант.

Проверьте себя

Сначала решите самостоятельно. Затем проверьте ответ или откройте объяснение.

Ответ и объяснение

2. Подходят 4 и 8. Ноль не положительный.

Ответ и объяснение

12. 4 + 8 = 12.

Ответ и объяснение

4. Подходят 2, 4, 6, 8: четыре числа.

Ответ и объяснение

20. 2 + 4 + 6 + 8 = 20.

Ответ и объяснение

5. Значения i: 1, 2, 3, 4, 5. Граница 6 не входит.

Ответ и объяснение

0. Подходящих чисел нет, поэтому исходное s = 0 остаётся неизменным.

Закрепить тему

Примени изученный приём на новой задаче.

Решить задачу
Ещё по теме и поделиться
Поделиться: Telegram ВКонтакте
ВАШ ПРЕПОДАВАТЕЛЬНикита Саралашвили

Разберёмся вместе

ОГЭ, ЕГЭ и программирование — от первого вопроса до уверенного решения.

Загружаем стоимость занятий…

Обсудим вашу цель?

Напишите, к чему готовитесь и с чем нужна помощь.

Все условия занятий