16 задание ОГЭ информатика
Программа на Python
2 балла ≈ 25 мин уровень В Программа на универсальном языке программирования
Задание 16 – написать программу, которая обрабатывает последовательность чисел: считает сумму, количество, минимум, максимум или среднее для чисел с определённым условием. Язык – любой; ниже Python. Максимум 2 балла: эксперты запускают программу на нескольких тестах. 2 балла – верно на всех тестах, 1 балл – ошибка ровно на одном тесте, 0 – больше ошибок.
Два вида ввода
- Сначала количество N, затем N чисел – цикл
for. - Числа до признака конца (например, до 0) – цикл
while.
Нужные условия
| Условие | На Python |
|---|---|
| кратно 3 | x % 3 == 0 |
| оканчивается на 4 | x % 10 == 4 |
| в k-ричной системе оканчивается на d | x % k == d |
| чётное / нечётное | x % 2 == 0 / x % 2 == 1 |
| двузначное | 10 <= x <= 99 |
Пример 1 (демоверсия): ввод с N. Сумма чисел, которые в 7-ричной системе оканчиваются на 1. Последняя цифра в 7-ричной записи – это остаток от деления на 7.
n = int(input())
s = 0
for i in range(n):
x = int(input())
if x % 7 == 1:
s += x
print(s)
Для чисел 15, 13, 11, 8, 23 подходят 15 и 8 (остаток 1), ответ 23.
Пример 2: ввод до нуля. Найти минимальное число, кратное 3 (числа не больше 30 000, 0 – конец ввода, гарантированно есть хотя бы одно подходящее).
m = 30001
x = int(input())
while x != 0:
if x % 3 == 0 and x < m:
m = x
x = int(input())
print(m)
Алгоритм решения
- Определи вид ввода (с N или до 0) и что считаем (сумма, количество, мин, макс, среднее).
- Заведи переменную-накопитель: сумма и количество – 0; минимум – число больше любого возможного; максимум – меньше любого возможного.
- Запиши условие отбора и обновление накопителя.
- Выведи только результат.
- Проверь программу на примере из условия и на своём тесте: один элемент, ни одного подходящего, все подходящие.
Ловушки
- Подсказки в
input("Введите число")и лишниеprint– портят вывод. Пиши простоinput(). - Признак конца (0) попал в обработку – например, посчитался как кратный 3.
- Начальное значение минимума 0 – тогда минимум всегда будет 0.
- Среднее: делить на количество подходящих, а не на N; печатать как в условии (иногда с дробной частью).
=вместо==в условии, забытое двоеточие или отступ.
- Начни с шаблона ввода (for с N или while до 0) – он одинаковый почти во всех вариантах.
- Последняя цифра в системе с основанием k – это x % k.
- Обязательно запусти программу на примере из условия и сравни ответ.
- Никаких подсказок в input() и лишних print – только итоговое число.
Частые вопросы о задании 16
Сколько баллов даёт задание 16 ОГЭ по информатике?
Максимум – 2 первичных балла. Норма времени на экзамене – около 25 мин. Уровень сложности – В.
Что проверяет задание 16?
Задание 16 – написать программу, которая обрабатывает последовательность чисел: считает сумму, количество, минимум, максимум или среднее для чисел с определённым условием. Язык – любой; ниже Python. Максимум 2 балла: эксперты запускают программу на нескольких тестах. 2 балла – верно на всех тестах, 1 балл – ошибка ровно на одном тесте, 0 – больше ошибок.
Как подготовиться к заданию 16?
Прочитайте теорию выше: алгоритм, нужные факты и ловушки. Затем решите подход из 10 заданий с автопроверкой и разбором – первые без регистрации – и вернитесь к ошибкам. В пробниках Сотки номер встречается в полных вариантах ФИПИ с подсчётом баллов.