Задача к ЕГЭ по информатике на тему «побитовая конъюнкция» №2

Для какого наименьшего натурального числа А формула

((x&15 ⁄= 0)∧ (x&64 ⁄= 0)) → ((x&A  ⁄= 0)∧ (x&15 ⁄= 0))

тождественно истинна (то есть принимает значение 1 при любом неотрицательном целом значении переменной x)?

for a in range(1, 100):
     # Переменная-флаг, по которой будем отслеживать наличие ложных выражений
     f = 0
     for x in range(1500):
         # Если нашлось такое выражение, то прекращаем перебор
         if (((x&15 != 0) and (x&64 != 0)) <= ((x&a != 0) and (x&15 != 0))) == False:
             f = 1
             break
     # Если ложных выражений не было, то выводим значение и прекращаем цикл,
     # так как нам нужно только минимальное значение
     if f == 0:
         print(a)
         break

Ответ: 15
Оцените статью
Я решу все!