ОГЭ по информатике · задание 3

Логическое высказывание: найти x

Дано высказывание с переменной x из сравнений, НЕ, И, ИЛИ. Нужно найти наименьшее или наибольшее натуральное x, при котором оно истинно или ложно.

Логические операции

  • НЕ A — истинно, когда A ложно.
  • A И B — истинно, только когда истинны оба.
  • A ИЛИ B — ложно, только когда ложны оба.
  • Сначала НЕ, потом И, потом ИЛИ; скобки — в первую очередь.

Как решать

  1. Упростить: НЕ (x > 5) — это x ≤ 5; НЕ (A И B) — это НЕ A ИЛИ НЕ B.
  2. Если спрашивают, когда высказывание ложно, ищем, когда истинно НЕ (высказывание).
  3. Проверить найденное число и соседнее подстановкой.

Типичные ошибки

  • НЕ (x < 7) — это x ≥ 7, а не x > 7: граница входит.
  • Пропустить слово «ложно» в условии.
  • Забыть, что натуральные числа начинаются с 1.

Разобранные варианты

Сначала реши сам, потом открой разбор. В разборе — проверка соседних значений и программа на Python.

Вариант 1

наименьшее · истинно

Напишите наименьшее натуральное число x, для которого истинно высказывание:

НЕ ((x < 10) ИЛИ НЕ (x чётное))

Разбор

Шаг 1. Разбираем высказывание по частям. Каждая скобка — простое условие про x; НЕ меняет истину на ложь, И истинно, только когда истинны обе части, ИЛИ — когда истинна хотя бы одна.

Шаг 2. Когда высказывание истинно? Перебор показывает: для натуральных x от 10 и больше (только чётные).

Шаг 3. Проверяем ответ и соседние значения (И — истинно, Л — ложно):

x < 10(x чётное)Всё высказывание
x = 9ИЛложно
x = 10ЛИистинно
x = 11ЛЛложно

Ответ: 10

Решение на Python. Перебираем x и проверяем высказывание.

for x in range(1, 1001):
    if not ((x < 10) or (not (x % 2 == 0))):
        print(x)
        break      # первое найденное — наименьшее

Вариант 2

наибольшее · истинно

Напишите наибольшее натуральное число x, для которого истинно высказывание:

НЕ (x > 10) И (x < 27)

Разбор

Шаг 1. Разбираем высказывание по частям. Каждая скобка — простое условие про x; НЕ меняет истину на ложь, И истинно, только когда истинны обе части, ИЛИ — когда истинна хотя бы одна.

Шаг 2. Когда высказывание истинно? Перебор показывает: для натуральных x от 1 до 10.

Шаг 3. Проверяем ответ и соседние значения (И — истинно, Л — ложно):

x > 10x < 27Всё высказывание
x = 9ЛИистинно
x = 10ЛИистинно
x = 11ИИложно

Ответ: 10

Решение на Python. Перебираем x и проверяем высказывание.

for x in range(1, 1001):
    if (not (x > 10)) and (x < 27):
        print(x)
# последнее напечатанное число — наибольшее

Вариант 3

наибольшее · ложно

Напишите наибольшее натуральное число x, для которого ложно высказывание:

НЕ (x < 25) ИЛИ НЕ (x > 23)

Разбор

Шаг 1. Разбираем высказывание по частям. Каждая скобка — простое условие про x; НЕ меняет истину на ложь, И истинно, только когда истинны обе части, ИЛИ — когда истинна хотя бы одна.

Шаг 2. Когда высказывание ложно? Перебор показывает: для натуральных x 24.

Шаг 3. Проверяем ответ и соседние значения (И — истинно, Л — ложно):

x < 25x > 23Всё высказывание
x = 23ИЛистинно
x = 24ИИложно
x = 25ЛИистинно

Ответ: 24

Решение на Python. Перебираем x и проверяем высказывание.

for x in range(1, 1001):
    if not ((not (x < 25)) or (not (x > 23))):
        print(x)
# последнее напечатанное число — наибольшее

Вариант 4

наименьшее · ложно

Напишите наименьшее натуральное число x, для которого ложно высказывание:

НЕ (x > 15) ИЛИ НЕ (x > 26)

Разбор

Шаг 1. Разбираем высказывание по частям. Каждая скобка — простое условие про x; НЕ меняет истину на ложь, И истинно, только когда истинны обе части, ИЛИ — когда истинна хотя бы одна.

Шаг 2. Когда высказывание ложно? Перебор показывает: для натуральных x от 27 и больше.

Шаг 3. Проверяем ответ и соседние значения (И — истинно, Л — ложно):

x > 15x > 26Всё высказывание
x = 26ИЛистинно
x = 27ИИложно
x = 28ИИложно

Ответ: 27

Решение на Python. Перебираем x и проверяем высказывание.

for x in range(1, 1001):
    if not ((not (x > 15)) or (not (x > 26))):
        print(x)
        break      # первое найденное — наименьшее

Вариант 5

наибольшее · ложно

Напишите наибольшее натуральное число x, для которого ложно высказывание:

НЕ (x < 40) ИЛИ НЕ (x > 26)

Разбор

Шаг 1. Разбираем высказывание по частям. Каждая скобка — простое условие про x; НЕ меняет истину на ложь, И истинно, только когда истинны обе части, ИЛИ — когда истинна хотя бы одна.

Шаг 2. Когда высказывание ложно? Перебор показывает: для натуральных x от 27 до 39.

Шаг 3. Проверяем ответ и соседние значения (И — истинно, Л — ложно):

x < 40x > 26Всё высказывание
x = 38ИИложно
x = 39ИИложно
x = 40ЛИистинно

Ответ: 39

Решение на Python. Перебираем x и проверяем высказывание.

for x in range(1, 1001):
    if not ((not (x < 40)) or (not (x > 26))):
        print(x)
# последнее напечатанное число — наибольшее

Вариант 6

наибольшее · ложно

Напишите наибольшее натуральное число x, для которого ложно высказывание:

(x < 43) ИЛИ НЕ ((x < 46) И (x < 44))

Разбор

Шаг 1. Разбираем высказывание по частям. Каждая скобка — простое условие про x; НЕ меняет истину на ложь, И истинно, только когда истинны обе части, ИЛИ — когда истинна хотя бы одна.

Шаг 2. Когда высказывание ложно? Перебор показывает: для натуральных x 43.

Шаг 3. Проверяем ответ и соседние значения (И — истинно, Л — ложно):

x < 43x < 46x < 44Всё высказывание
x = 42ИИИистинно
x = 43ЛИИложно
x = 44ЛИЛистинно

Ответ: 43

Решение на Python. Перебираем x и проверяем высказывание.

for x in range(1, 1001):
    if not ((x < 43) or (not ((x < 46) and (x < 44)))):
        print(x)
# последнее напечатанное число — наибольшее

Вариант 7

наибольшее · истинно

Напишите наибольшее натуральное число x, для которого истинно высказывание:

НЕ (x > 37) И (x > 30)

Разбор

Шаг 1. Разбираем высказывание по частям. Каждая скобка — простое условие про x; НЕ меняет истину на ложь, И истинно, только когда истинны обе части, ИЛИ — когда истинна хотя бы одна.

Шаг 2. Когда высказывание истинно? Перебор показывает: для натуральных x от 31 до 37.

Шаг 3. Проверяем ответ и соседние значения (И — истинно, Л — ложно):

x > 37x > 30Всё высказывание
x = 36ЛИистинно
x = 37ЛИистинно
x = 38ИИложно

Ответ: 37

Решение на Python. Перебираем x и проверяем высказывание.

for x in range(1, 1001):
    if (not (x > 37)) and (x > 30):
        print(x)
# последнее напечатанное число — наибольшее

Вариант 8

наименьшее · истинно

Напишите наименьшее натуральное число x, для которого истинно высказывание:

НЕ (x < 10) И (x > 6)

Разбор

Шаг 1. Разбираем высказывание по частям. Каждая скобка — простое условие про x; НЕ меняет истину на ложь, И истинно, только когда истинны обе части, ИЛИ — когда истинна хотя бы одна.

Шаг 2. Когда высказывание истинно? Перебор показывает: для натуральных x от 10 и больше.

Шаг 3. Проверяем ответ и соседние значения (И — истинно, Л — ложно):

x < 10x > 6Всё высказывание
x = 9ИИложно
x = 10ЛИистинно
x = 11ЛИистинно

Ответ: 10

Решение на Python. Перебираем x и проверяем высказывание.

for x in range(1, 1001):
    if (not (x < 10)) and (x > 6):
        print(x)
        break      # первое найденное — наименьшее

Вариант 9

наибольшее · ложно

Напишите наибольшее натуральное число x, для которого ложно высказывание:

НЕ (x < 19) ИЛИ НЕ (x < 17)

Разбор

Шаг 1. Разбираем высказывание по частям. Каждая скобка — простое условие про x; НЕ меняет истину на ложь, И истинно, только когда истинны обе части, ИЛИ — когда истинна хотя бы одна.

Шаг 2. Когда высказывание ложно? Перебор показывает: для натуральных x от 1 до 16.

Шаг 3. Проверяем ответ и соседние значения (И — истинно, Л — ложно):

x < 19x < 17Всё высказывание
x = 15ИИложно
x = 16ИИложно
x = 17ИЛистинно

Ответ: 16

Решение на Python. Перебираем x и проверяем высказывание.

for x in range(1, 1001):
    if not ((not (x < 19)) or (not (x < 17))):
        print(x)
# последнее напечатанное число — наибольшее

Вариант 10

наибольшее · истинно

Напишите наибольшее натуральное число x, для которого истинно высказывание:

НЕ ((x > 32) И (x чётное)) И (x < 28)

Разбор

Шаг 1. Разбираем высказывание по частям. Каждая скобка — простое условие про x; НЕ меняет истину на ложь, И истинно, только когда истинны обе части, ИЛИ — когда истинна хотя бы одна.

Шаг 2. Когда высказывание истинно? Перебор показывает: для натуральных x от 1 до 27.

Шаг 3. Проверяем ответ и соседние значения (И — истинно, Л — ложно):

x > 32(x чётное)x < 28Всё высказывание
x = 26ЛИИистинно
x = 27ЛЛИистинно
x = 28ЛИЛложно

Ответ: 27

Решение на Python. Перебираем x и проверяем высказывание.

for x in range(1, 1001):
    if (not ((x > 32) and (x % 2 == 0))) and (x < 28):
        print(x)
# последнее напечатанное число — наибольшее

Для самостоятельного решения

Варианты 11–15 без разборов. Ответ можно проверить кнопкой.

Вариант 11

наименьшее · истинно

Напишите наименьшее натуральное число x, для которого истинно высказывание:

НЕ (x > 47) И (x > 32)

Вариант 12

наименьшее · истинно

Напишите наименьшее натуральное число x, для которого истинно высказывание:

НЕ ((x < 29) ИЛИ НЕ (x чётное))

Вариант 13

наибольшее · ложно

Напишите наибольшее натуральное число x, для которого ложно высказывание:

НЕ ((x < 26) И (x чётное)) И (x > 24)

Вариант 14

наибольшее · ложно

Напишите наибольшее натуральное число x, для которого ложно высказывание:

(x > 39) ИЛИ НЕ ((x > 36) И (x > 31))

Вариант 15

наибольшее · истинно

Напишите наибольшее натуральное число x, для которого истинно высказывание:

НЕ ((x > 20) ИЛИ (x > 23))