Высокий (2 балла)
Время: 10-15 мин
Python
Цикл while / for
Условия divisibility
Задание №15.2 ОГЭ. Короткая программа на Python
Тема: Обработка последовательности чисел: поиск минимума, максимума, суммы и счетчика
Написание короткой программы на Python для обработки последовательности целых чисел с условиями делимости (например, кратно 4 и оканчивается на 2).
1. Базовый шаблон для Задания 15.2
В задании требуется найти сумму, количество, минимум или максимум среди чисел, удовлетворяющих условию (например, кратных 6 и оканчивающихся на 4):
- Проверка делимости на 6:
x % 6 == 0. - Проверка последней цифры:
abs(x) % 10 == 4(всегда используйтеabs()для безопасной работы с отрицательными числами!).
Разновидности и прототипы задания на экзамене
1. Последовательность из N чисел
Первое число на входе — количество элементов N.
2. Последовательность, оканчивающаяся нулём (признак 0)
Цикл
while True: с выходом при x == 0.Боевой шаблон решения на Python
Запустить код в онлайн-песочницеБоевой шаблон решения на Python
# === Боевой шаблон решения Задания 15.2 ОГЭ на Python ===
# Вариант 1: Вход заканчивается нулем
count = 0
total_sum = 0
max_val = -1000000
while True:
x = int(input())
if x == 0:
break
# Пример условия: число кратно 4 и оканчивается на 2
if x % 4 == 0 and abs(x) % 10 == 2:
count += 1
total_sum += x
if x > max_val:
max_val = x
# Выводим то, что просят в вопросе задачи:
print(total_sum) # или print(count), или print(max_val)
Типичные ошибки
✕ Не так
Ошибка: Инициализировать максимум нулем при возможных отрицательных числах
max_val = 0 (если все числа отрицательные, максимум останется 0!).
✓ Так
Правильно: Инициализировать max_val = -10**9 или None.
✕ Не так
Ошибка: x % 10 == 4 для отрицательных чисел
В Python -14 % 10 равно 6, а не 4!
✓ Так
Правильно: Всегда брать модуль числа: abs(x) % 10 == 4.
ГРОБ
ЛОВУШКА ОГЭ 15.2: Ноль как элемент данных
Ноль в конце последовательности является признаком ее окончания и НЕ должен учитываться при вычислении ответа.
Как обойти
Проверка
if x == 0: break должна стоять СРАЗУ после ввода x = int(input()) до любых условий и счетчиков.Лайфхаки на экзамене
- Проверяйте код на тестовых примерах из условия задачи — если ответ совпал, программа почти наверняка верна на 100%!