Автор: Ретунских Екатерина Олеговна
Должность: учитель информатики
Учебное заведение: ГБОУ КШИ «Кубанский казачий кадетский корпус»
Населённый пункт: г. Краснодар
Наименование материала: методическая разработка
Тема: Кодирование информации
Дата публикации: 10.06.2026
Раздел: среднее образование
Методы решения задания 6 ОГЭ по информатике
Аннотация. В статье рассматриваются различные подходы к решению задания 6
Основного государственного экзамена по информатике. Задание проверяет умение
анализировать простые алгоритмы, записанные на языке программирования, и в
последние годы является одним из самых трудных для девятиклассников — его
выполняют
чуть
больше
40%
школьников.
В
материале
представлены
аналитический, графический методы, решение с помощью электронных таблиц, а
также метод, основанный на написании и запуске программы на языке Python.
Статья адресована учителям информатики для подготовки учащихся к ОГЭ.
Ключевые слова: ОГЭ по информатике, задание 6, программа с условным
оператором, параметр, методы решения, Python.
1. Введение
Основной государственный экзамен по информатике с каждым годом набирает
популярность, уступая по числу сдающих только обществознанию. Задание 6 ОГЭ
по информатике проверяет навыки анализа алгоритмов, записанных на языке
программирования. Важно не только уметь писать программу, но и уметь её читать
и предсказывать результат её работы.
Задание 6 — это задача базового уровня сложности с кратким ответом (число). В
спецификации ОГЭ на её выполнение отводится около 6 минут, максимальный
балл — 1. Несмотря на базовый уровень, именно это задание вызывает у многих
школьников затруднения, особенно когда в условии появляется параметр А.
В данной статье мы рассмотрим несколько эффективных методов решения таких
задач.
2. Типичная формулировка задания 6
В демонстрационных вариантах ОГЭ и в открытом банке заданий ФИПИ
представлены задания, общий вид которых следующий:
Ниже приведена программа, записанная на нескольких языках программирования.
pascal
var s, t, A: integer;
begin
readln(s);
readln(t);
readln(A);
if (s > 10) or (t > A) then
writeln ('YES')
else
writeln ('NO')
end.
Было проведено 9 запусков программы, при которых в качестве значений
переменных s и t вводились следующие пары чисел: (1, 2); (11, 2); (1, 12); (11, 12);
(−11, −12); (−11, 12); (−12, 11); (10, 10); (10, 5).
Укажите количество целых значений параметра A, при которых для указанных
входных данных программа напечатает «NO» три раза.
Программа может быть записана на Паскале, алгоритмическом языке, Python,
Бейсике
или
C++.
Условный
оператор
может
содержать
союз «ИЛИ»
(OR) или «И» (AND). Задача может быть двух типов:
Вариант 1: найти количество целых значений параметра A.
Вариант
2: найти
количество
запусков,
при
которых
программа
выдала
определённый результат.
3. Методы решения
Рассмотрим основные методы решения на примере задачи, где программа
напечатала «NO» три раза.
3.1. Аналитический метод (метод «от противного»)
Этот метод основан на логическом анализе условия.
Шаг 1. Определить условие печати «NO». В нашем примере программа печатает
«NO», если условие (s > 10) or (t > A) ложно. Это происходит, когда
одновременно s <= 10 и t <= A.
Шаг 2. Отсеять пары, где s > 10, так как для них условие s <= 10 не выполняется, и
программа никогда не напечатает «NO». В нашем примере это пары (11, 2) и (11,
12). Остаются 7 пар.
Шаг 3. По условию «NO» должно быть напечатано 3 раза. Значит, нужно найти
такие значения A, при которых условие t <= A выполняется ровно для 3 пар из
оставшихся 7.
Шаг 4. Выписать значения t из оставшихся пар: 2, 12, -12, 12, 11, 10, 5.
Шаг 5. Подобрать значения A. Если A = 5, то условие t <= 5 выполняется для
значений -12, 2, 5 (три значения). Если A = 6, 7, 8, 9 — тоже три значения
(добавляются только числа больше 5, которых нет в наборе). Если A = 10, то
добавится ещё 10, и значений станет 4. Таким образом, подходят A = 5, 6, 7, 8, 9.
Всего 5 значений.
Этот метод требует внимательности и аккуратного подсчёта.
3.2. Графический метод
Графический метод нагляден и помогает избежать ошибок при подсчёте.
Шаг 1. Построить в системе координат все точки (s; t). Ось s — горизонтальная,
ось t — вертикальная.
Шаг 2. Определить, при каком условии программа печатает «NO». В нашем
примере это s <= 10 и t <= A.
Шаг 3. Отметить точки, для которых s > 10 (они не подходят). В нашем примере
это точки (11, 2) и (11, 12).
Шаг 4. Мысленно или на рисунке двигать прямую t = A параллельно оси s вниз.
Для каждого значения A подсчитывать количество точек, которые лежат ниже этой
прямой (включая точки на прямой).
Шаг 5. Найти значения A, при которых таких точек ровно 3. В нашем примере это
A от 5 до 9.
3.3. Метод с использованием электронной таблицы
Этот метод позволяет автоматизировать подсчёт и особенно полезен при большом
количестве пар чисел.
Шаг 1. Внести значения t в столбец (например, A2:A8).
Шаг 2. В первой строке (B1:Z1) записать возможные значения параметра A.
Шаг 3. В ячейку B2 ввести формулу: =ЕСЛИ($A2<=B$1;1;0). Скопировать эту
формулу на все ячейки таблицы.
Шаг 4. Под каждым столбцом A подсчитать сумму: =СУММ(B2:B8) и скопировать
формулу вправо.
Шаг 5. В строке с суммами найти количество столбцов, где сумма равна 3. Это и
будет ответ.
3.4. Метод решения через программирование на Python
Этот метод наиболее надёжен и понятен учащимся, так как они сами пишут и
запускают программу.
Алгоритм для варианта 1 (поиск количества значений A):
1.
Открыть среду разработки Python (IDLE).
2.
Написать программу, аналогичную данной в задании, но вынести параметр A в
отдельный цикл или вводить его вручную.
3.
Для проверки конкретного значения A ввести его и посмотреть, сколько раз
программа напечатает «NO».
4.
Изменяя A, подобрать все значения, при которых «NO» печатается ровно 3 раза.
Пример программы для автоматического перебора:
python
# Все пары (s, t)
pairs = [(1, 2), (11, 2), (1, 12), (11, 12), (-11, -12), (-11, 12), (-12, 11), (10, 10), (10, 5)]
count_A = 0
for A in range(-20, 21): # Перебираем возможные значения A
count_NO = 0
for s, t in pairs:
if not ((s > 10) or (t > A)): # Условие печати "NO"
count_NO += 1
if count_NO == 3:
count_A += 1
print(count_A) # Ответ: 5
Алгоритм для варианта 2 (поиск количества запусков):
1.
Написать программу, которая для всех заданных пар чисел (s, t) и конкретного
значения A (которое дано в условии) выводит результат («YES» или «NO») для
каждого запуска.
2.
Подсчитать, сколько раз вывелось «YES» или «NO» в зависимости от вопроса
задачи.
3.
Записать полученное число в ответ.
Этот метод практически исключает ошибки, так как программу проверяет
компьютер. Главное — внимательно переносить условие и не перепутать
переменные.
4. Рекомендации для учащихся
1.
Внимательно читайте условие. Определите, что нужно найти: количество
значений A или количество запусков.
2.
Определите тип логической операции. Если в условии ИЛИ (OR), то программа
печатает «YES», если выполняется хотя бы одно условие. Если И (AND), то
должны выполняться оба условия.
3.
Используйте метод «от противного». Часто проще посчитать, при каких условиях
программа печатает «NO», а не «YES».
4.
Не пренебрегайте графическим методом. Рисунок помогает визуализировать
задачу и избежать ошибок в подсчёте.
5.
Освойте метод программирования. Это самый надёжный способ, особенно если
вы сдаёте ОГЭ на компьютере. Потратив 2–3 минуты на написание программы, вы
гарантированно получите правильный ответ.
5. Заключение
Задание 6 ОГЭ по информатике проверяет важнейшее умение — анализировать
готовый алгоритм. Представленные методы решения (аналитический, графический,
с использованием электронных таблиц и программирования) позволяют подойти к
задаче с разных сторон и выбрать наиболее удобный для каждого учащегося.
Особенно перспективным является метод решения через программирование,
который не только даёт верный ответ, но и развивает навыки написания и отладки
кода — ключевые компетенции современного ИТ-специалиста.