Задание 6 ОГЭ: программа с условным оператором — полный гайд
Подтемы
- Задания для подготовки22 задач
Что проверяет задание
Задание 6 проверяет умение читать простую программу с условным оператором и логическими связками AND (и) / OR (или), записанную на одном из пяти языков программирования: Бейсик, Python, Паскаль, алгоритмический язык, С++. Проверяется способность:
- понять синтаксис условного оператора
if...then...elseнезависимо от языка; - вычислить истинность логического выражения при конкретных значениях переменных;
- посчитать, сколько раз из нескольких запусков программа выдаёт тот или иной результат.
Это задание не требует знания конкретного языка программирования — во всех вариантах программа делает одно и то же, просто записана разным синтаксисом. Важно понимать логику работы условного оператора и правильно применять операции сравнения и логические связки.
Как выглядит формулировка и сколько баллов
Типовая формулировка: приведена программа на пяти языках, которая считывает два целых числа и , проверяет условие вида или (либо с AND, либо с OR), и печатает YES или NO. Далее даётся таблица из 9 пар чисел, которые вводились в программу, и задаётся вопрос: сколько раз программа напечатала YES (или NO).
Задание относится к базовому уровню сложности, оценивается в 1 балл. Ответ — целое число, засчитывается только полное совпадение с эталоном, частичного балла нет.
Что нужно знать
- Условный оператор
if...then...elseвыполняет одну ветвь, если условие истинно, и другую — если условие ложно. - Логическая операция И (AND,
и,&&) истинна только тогда, когда истинны оба операнда: . - Логическая операция ИЛИ (OR,
или,||) истинна, если истинен хотя бы один операнд: . - Операторы сравнения: , , , , , — работают одинаково для целых чисел, включая отрицательные.
- Отрицательное число всегда меньше положительного и меньше нуля: например, верно всегда.
- В разных языках синтаксис отличается, но смысл конструкции одинаков:
- Python:
if условие: ... else: ... - Паскаль:
if условие then ... else ... - Алгоритмический язык:
если условие то ... иначе ... - С++:
if (условие) ... else ... - Порядок операций: сравнение выполняется раньше логической связки, то есть читается как .
Методы решения
Метод 1. Построчная проверка каждой пары. Для каждой пары чисел из таблицы подставляем значения в условие и определяем истинность каждого простого сравнения, затем применяем логическую связку.
Пример: условие , пара . Проверяем: — истина, — истина. Оба истинны, значит всё условие истинно, программа печатает YES.
Метод 2. Работа с таблицей истинности для двух условий. Если условие содержит связку AND, программа печатает YES только когда истинны оба сравнения. Если связка OR — печатает YES, если истинно хотя бы одно.
Пример: условие , пара . Проверяем: — ложь, — ложь. Оба ложны, значит вся дизъюнкция ложна, ответ NO.
Метод 3. Аккуратная работа с отрицательными числами. Часто ошибки возникают именно на отрицательных значениях. Нужно чётко понимать, что — ложь, а — истина.
Пример: условие , пара . Проверяем: — ложь, — ложь. Оба ложны, дизъюнкция ложна, ответ NO.
Метод 4. Подсчёт итогового количества совпадений. После того как определена истинность условия для каждой из пар, считаем, сколько раз получился нужный результат (YES или NO), а не просто перечисляем результаты — важно правильно ответить именно на поставленный вопрос.
Пример: если из 9 запусков в 5 случаях условие истинно, а вопрос звучит «сколько раз напечатано YES», ответ — 5. Если бы спрашивали про NO, ответ был бы 4.
Метод 5. Использование таблицы для систематизации. Для надёжности стоит выписать все пары в таблицу с тремя дополнительными столбцами: значение первого сравнения, значение второго сравнения, итоговый результат. Это снижает риск ошибки при большом количестве пар.
Алгоритм решения по шагам
- Определить, какое условие проверяется в программе и какая логическая связка используется — AND или OR.
- Понять, какое сравнение соответствует каждой части условия (например, и ).
- Выписать все пары значений из условия задачи в столбик или таблицу.
- Для каждой пары подставить значения в оба сравнения и определить истинность каждого.
- Применить логическую связку: для AND — истина только если оба истинны; для OR — истина, если хотя бы одно истинно.
- Записать итоговый результат (
YESилиNO) для каждой пары. - Посчитать количество нужных результатов согласно вопросу задания.
- Сверить количество посчитанных случаев с общим числом пар — сумма
YESиNOдолжна совпадать с числом запусков.
Разбор примеров
Пример 1. Условие программы: печатать YES, если , иначе NO. Даны пары: ; ; ; ; ; ; ; ; .
Проверяем каждую пару по шагам:
- : — ложь, — ложь. Итог:
NO. - : — истина, — ложь. Дизъюнкция истинна:
YES. - : — ложь, — истина.
YES. - : оба истинны.
YES. - : оба ложны.
NO. - : — ложь, — истина.
YES. - : — ложь, — истина.
YES. - : — ложь (строгое неравенство), — ложь.
NO. - : оба ложны.
NO.
Считаем количество YES: пары 2, 3, 4, 6, 7 — всего 5 случаев. Ответ: 5.
Пример 2. Условие: печатать YES, если , иначе NO. Пары: ; ; ; ; ; ; ; ; .
Проверяем каждую пару:
- : — ложь, — ложь.
NO. - : — ложь, — ложь.
NO. - : — истина.
YES. - : — ложь, — истина.
YES. - : — истина.
YES. - : — истина.
YES. - : — истина.
YES. - : — истина.
YES. - : — истина.
YES.
Считаем количество YES: пары 3, 4, 5, 6, 7, 8, 9 — всего 7 случаев. Ответ: 7.
Пример 3. Условие: печатать YES, если , иначе NO. Пары: ; ; ; ; ; ; ; ; .
Здесь связка AND, поэтому нужны истинными оба сравнения одновременно:
- : — истина, — истина.
YES. - : — ложь.
NO. - : оба ложны.
NO. - : — истина, — истина.
YES. - : оба истинны.
YES. - : оба ложны.
NO. - : — ложь, — ложь.
NO. - : оба истинны.
YES. - : оба ложны.
NO.
Считаем количество YES: пары 1, 4, 5, 8 — всего 4 случая. Ответ: 4.
Типичные ошибки и ловушки
- Путаница между AND и OR. Самая частая ошибка — забыть, что для AND нужны истинны оба условия, а для OR достаточно одного. Внимательно смотрите на слово в тексте программы:
и/AND/&&илиили/OR/||. - Неверная работа со строгими неравенствами. — это ложь, а не истина. При равенстве значений граничному числу строгое неравенство не выполняется.
- Ошибки с отрицательными числами. Легко перепутать, что ложно, а истинно. Отрицательное число всегда меньше положительного.
- Подсчёт не того, что спрашивают. Внимательно читайте вопрос: спрашивают про
YESили проNO— это разные числа, и сумма ответов по обоим вопросам всегда равна общему числу запусков. - Потеря пары при переборе. При большом количестве пар легко пропустить одну строку или посчитать её дважды — рекомендуется помечать проверенные пары или вести таблицу.
- Невнимательность к синтаксису конкретного языка. Хотя логика одна и та же, иногда в задании условие записано непривычно — важно сначала перевести его на язык математических неравенств, а потом уже считать.
Как готовиться
Для уверенного решения задания 6 нужна практика на распознавание логических связок и аккуратный устный счёт с отрицательными числами. Полезно решить подряд 15–20 подобных задач с разными комбинациями AND/OR и разными знаками неравенств, чтобы автоматизировать проверку условий. При каждом решении желательно выписывать промежуточные результаты в таблицу — это снижает число арифметических ошибок и ошибок внимания. Также стоит потренироваться быстро переводить условие с любого из пяти языков программирования в привычную математическую запись неравенств — тогда сама логика задания перестаёт зависеть от синтаксиса и становится делом простого подсчёта.
Частые вопросы
Нужно ли знать конкретный язык программирования для решения задания 6?
Нет, программа записана одинаково на пяти языках, достаточно понять логику условного оператора и перевести условие в математические неравенства.
Как отличить AND от OR в условии?
AND (и, &&) требует истинности обоих сравнений одновременно, OR (или, ||) требует истинности хотя бы одного из них.
Что делать с отрицательными числами в сравнениях?
Помнить, что отрицательное число всегда меньше нуля и меньше любого положительного числа, поэтому строгое неравенство вида «больше положительного числа» для отрицательных значений всегда ложно.
Засчитывается ли частичный балл за неверное количество?
Нет, задание 6 оценивается в 1 балл, и балл ставится только за полностью верный числовой ответ.
Как проверить себя после решения?
Сложить количество YES и количество NO по всем парам — сумма должна равняться общему числу запусков, указанному в условии.
Что если равенство совпадает с граничным значением в неравенстве?
Для строгих неравенств (, ) равенство границе даёт ложь, для нестрогих (, ) — истину, поэтому важно смотреть точный знак в условии.