Разбор задания №6 ОГЭ по информатике: Программы с ветвлением и логическими условиями

Разбор задания №6 ОГЭ по информатике: Программы с ветвлением и логическими условиями

Разбор задания №6 ОГЭ по информатике: Программы с ветвлением и логическими условиями

Задание №6 в ОГЭ по информатике проверяет базовые навыки чтения и анализа программного кода. В нём моделируется работа условного оператора (if / else), логических связок (И, ИЛИ, НЕ) и подсчёт количества срабатываний программы при различных входных данных.
За правильное выполнение вы получаете 1 первичный балл. Задание решается за 2–3 минуты простым перебором пар чисел на черновике.

1. Теоретический фундамент: что нужно знать

В условии приводится один и тот же алгоритм на 5 языках программирования (Python, C++, Паскаль, Бейсик, Алгоритмический язык). Вы можете выбрать любой привычный для вас язык. Чаще всего школьники выбирают Python или Паскаль.

Как работают логические связки в условиях

Связка в логикеВ коде PythonВ Паскале / C++Правило срабатывания
И (конъюнкция)andand / &&Условие истинно, только если оба условия выполняются одновременно.
ИЛИ (дизъюнкция)oror / ||Условие истинно, если выполняется хотя бы одно из условий.
НЕ (отрицание)notnot / !Меняет знак или истинность условия на противоположное.

Операции деления и сравнения:

  • s // 2 (или s div 2) — целочисленное деление (деление с отбрасыванием дробной части: 7 // 2 = 3).
  • s % 5 (или s mod 5) — остаток от деления (18 % 5 = 3).
  • s >= 2 * k — нестрогое неравенство (больше либо равно).

2. Основные типы задания №6

  1. Классический подсчёт ответов «YES» (или «ДА») — даны 9 пар чисел (s, t), нужно сосчитать количество пар, при которых выполнилось условие if.
  2. Ловушка с вопросом «NO» (или «НЕТ») — программа проверяет условие, но в вопросе просят посчитать, сколько раз условие не выполнилось.
  3. Задачи с параметром А (повышенная сложность) — в коде появляется неизвестное число А, и требуется найти наименьшее, наибольшее значение А или количество подходящих целых значений А.

3. Универсальный пошаговый алгоритм решения

  1. Определите переменные: в скобках всегда даётся пара (первое число, второе число). Первое число идёт в s, второе — в t (или k).
  2. Упростите условие (если есть not):
    • not (s > -4) ⇔ s ≤ -4
    • not (t > 3) ⇔ t ≤ 3
  3. Выпишите 9 пар чисел в столбик на черновике.
  4. Проверьте каждую пару:
    • Для связки И (and): если первое условие ложно, второе можно даже не проверять (сразу «NO»).
    • Для связки ИЛИ (or): если первое условие истинно, второе можно не проверять (сразу «YES»).
  5. Перечитайте вопрос задания: убедитесь, что вы считаете именно YES (ДА) или NO (НЕТ).

4. Разбор типовых примеров из банка ФИПИ

Пример 1. Базовый подсчёт с логическим «ИЛИ» (or)

Условие (№ 10458):Ниже приведена программа на языке Python:
PythonБыло проведено 9 запусков программы с парами чисел (s, t):(1, 2); (11, 2); (1, 12); (11, 12); (-11, -12); (-11, 12); (-12, 11); (10, 10); (10, 5).
Сколько было запусков, при которых программа напечатала «YES»?

Пошаговое решение:

Условие для вывода «YES»: s > 10 ИЛИ t > 10 (достаточно, чтобы хотя бы одно число было строго больше 10).

  1. (1, 2): 1 > 10 (нет), 2 > 10 (нет) → NO
  2. (11, 2): 11 > 10 (да) → YES (1)
  3. (1, 12): 12 > 10 (да) → YES (2)
  4. (11, 12): 11 > 10 (да) → YES (3)
  5. (-11, -12): оба меньше 10 → NO
  6. (-11, 12): 12 > 10 (да) → YES (4)
  7. (-12, 11): 11 > 10 (да) → YES (5)
  8. (10, 10): 10 > 10 (нет, неравенство строгое!) → NO
  9. (10, 5): 10 > 10 (нет), 5 > 10 (нет) → NO

Программа напечатала «YES» ровно 5 раз.
Ответ: 5

Пример 2. Ловушка с вопросом «NO» и отрицанием not

Условие (№ 37236):Фрагмент программы на Python:
PythonБыло проведено 9 запусков:(9, 9); (9, 10); (8, 5); (11, 6); (-11, 10); (-5, 9); (-10, 10); (4, 5); (8, 6).
Сколько было запусков, при которых программа напечатала «NO»?

Пошаговое решение:

  1. Раскроем условие if:
    • not (t > 3) означает t ≤ 3.
    • Значит, «YES» выводится, когда одновременно: s < 5 И t ≤ 3.
  2. Проверяем пары на условие «YES»:
    • (9, 9): s = 9 (не меньше 5) → NO
    • (9, 10): s = 9 → NO
    • (8, 5): s = 8 → NO
    • (11, 6): s = 11 → NO
    • (-11, 10): s = -11 < 5 (да), но t = 10 (не ≤ 3) → NO
    • (-5, 9): s = -5 < 5 (да), но t = 9 (не ≤ 3) → NO
    • (-10, 10): s = -10 < 5 (да), но t = 10 (не ≤ 3) → NO
    • (4, 5): s = 4 < 5 (да), но t = 5 (не ≤ 3) → NO
    • (8, 6): s = 8 → NO
  3. Ни одна пара не дала ответ «YES». Все 9 запусков вывели ответ «NO».
  4. В вопросе просили указать количество выводов «NO» — это 9.

Ответ: 9

Пример 3. Задача с целочисленным делением

Условие (№ 18215):Фрагмент программы на Python:
PythonВходные пары (s, k):(1, 1); (8, 4); (14, 10); (20, 1); (7, 3); (10, 5); (10, 2); (4, 1); (1, 0).
Сколько было запусков, при которых программа напечатала «ДА»?

Пошаговое решение:

Проверяем равенство s // 2 == k:

  • (1, 1): 1 // 2 = 0 ≠ 1 → НЕТ
  • (8, 4): 8 // 2 = 4 == 4 → ДА (1)
  • (14, 10): 14 // 2 = 7 ≠ 10 → НЕТ
  • (20, 1): 20 // 2 = 10 ≠ 1 → НЕТ
  • (7, 3): 7 // 2 = 3 == 3 → ДА (2)
  • (10, 5): 10 // 2 = 5 == 5 → ДА (3)
  • (10, 2): 10 // 2 = 5 ≠ 2 → НЕТ
  • (4, 1): 4 // 2 = 2 ≠ 1 → НЕТ
  • (1, 0): 1 // 2 = 0 == 0 → ДА (4)

Всего программа напечатала «ДА» 4 раза.
Ответ: 4

Пример 4. Задание с параметром А (Повышенный уровень)

Условие (№ 16014):Фрагмент программы на Python:
PythonВходные пары (s, t):(1, 2); (11, 2); (1, 12); (11, 12); (-11, -12); (-11, 12); (-12, 11); (10, 10); (10, 5).
Укажите количество целых значений параметра А, при которых программа напечатает «NO» ровно три раза.

Пошаговое решение:

  1. Программа печатает «YES», если s > 10 или t > A.
  2. Соответственно, программа напечатает «NO», когда оба условия ложны: s ≤ 10 И t ≤ A.
  3. Найдём пары, где s > 10 (они всегда дадут «YES» независимо от А):
    • (11, 2) — s = 11 > 10 (всегда YES)
    • (11, 12) — s = 11 > 10 (всегда YES)
    • Эти 2 пары никогда не дадут «NO».
  4. Осталось 7 пар с s ≤ 10, для которых вывод «NO» зависит только от условия t ≤ A:
    • (1, 2) → t = 2
    • (1, 12) → t = 12
    • (-11, -12) → t = -12
    • (-11, 12) → t = 12
    • (-12, 11) → t = 11
    • (10, 10) → t = 10
    • (10, 5) → t = 5
  5. Выпишем значения t для этих 7 пар в порядке возрастания:-12, 2, 5, 10, 11, 12, 12
  6. Нам нужно получить ровно 3 ответа «NO». Это значит, что условие t ≤ A должно выполниться ровно для 3 наименьших значений t:
    • Должны подойти: -12, 2, 5 (значит, A ≥ 5)
    • Не должно подойти следующее число 10 (значит, A < 10)
  7. Получаем двойное неравенство для целого числа A:5 ≤ A < 10 (или 5 ≤ A ≤ 9)
  8. Подходящие целые значения А: {5, 6, 7, 8, 9} — всего 5 значений.

Ответ: 5

5. Типичные ловушки и частые ошибки

  1. Строгие знаки неравенства:
    • Если условие s > 10, а на вход подаётся число 10, то условие не выполняется (10 не больше 10).
  2. Вопрос задачи:
    • Всегда внимательно проверяйте, что именно спрашивается в конце: сколько раз программа напечатала YES или сколько раз NO.
  3. Путаница переменных s и t:
    • Первое число в скобках (s, t) подставляется вместо переменной s, а второе — вместо t. Не меняйте их местами при проверке.
  4. Работа с отрицательными числами:
    • Помните, что -5 > -10 (число -5 больше, чем -10).

Памятка для ученика

┌─────────────────────────────────────────────────────────────┐
│              ЧЕК-ЛИСТ ДЛЯ ЗАДАНИЯ №6 ОГЭ                    │
├─────────────────────────────────────────────────────────────┤
│ 1. Выбрать понятный язык (Python / Pascal).                 │
│ 2. Проверить связку:                                        │
│    • OR (ИЛИ)  → достаточно выполнения ХОТЯ БЫ ОДНОГО.      │
│    • AND (И)   → обязательно выполнение ОБОИХ условий.      │
│ 3. Раскрыть NOT, если он есть.                              │
│ 4. Проверить 9 пар по очереди, помечая ответ (+ / -).       │
│ 5. Внимательно перечитать вопрос: считаем «YES» или «NO»?   │
│ 6. Для задач с параметром А: упорядочить значения t.        │
└─────────────────────────────────────────────────────────────┘

Read more

В этот день в истории: 03.10.1993

Событие из мира науки и технологий 1993 год: В Москве противостояние сторонников президента Ельцина и Верховного Совета (ВС РФ) переходит в фазу открытого вооружённого противостояния — сторонники ВС РФ прорывают кольцо блокады вокруг Белого дома, захватывают здание мэрии и требуют предоставления прямого эфира у телецентра «Останкино».

Скрытая опция полосы прокрутки Windows позволяет перейти в любую точку документа или списка

В блоге Microsoft The Old New Thing ветеран Windows Рэймонд Чен поделился краткой историей сочетаний клавиш для полосы прокрутки. Обсуждая различные варианты взаимодействия с ней, он указал на «скрытый» ярлык, который требует удерживать клавишу Shift при щелчке в любом месте полосы прокрутки. Читать далее Источник

Metro 2033 и Last Light получат бесплатное обновление с улучшенной графикой и поддержкой 120 FPS

Возвращаться в московское метро скоро станет приятнее, насколько это вообще возможно среди мутантов и радиации. 4A Games и Deep Silver анонсировали бесплатное обновление для Metro 2033 Redux и Metro: Last Light Redux. На ПК оно выйдет 22 октября, а на PS5 и Xbox Series X|S — 29 октября. Читать новость