Какое условие эквивалентно NOT (is_paying = 1 AND has_subscription = 1) по правилу де Моргана? Выберите запись через OR.
A
NOT (is_paying = 1) AND NOT (has_subscription = 1)B
NOT is_paying = 1 AND has_subscription <> 1C
NOT (is_paying = 1) OR NOT (has_subscription = 1)D
is_paying = 1 OR has_subscription = 1Правильный ответ. По правилу де Моргана
NOT (A AND B) равносильно NOT A OR NOT B.Разбор
Чтобы конъюнкция A AND B оказалась ложной, достаточно ложности хотя бы одного из условий, поэтому отрицание превращает AND в OR между отрицаниями частей. Частая ошибка — заменить выражение на NOT A AND NOT B: это уже «ни одно из условий», а не «не одновременно оба». Запись через равенство нулю флага и AND арифметически совпадает с NOT A AND NOT B на бинарных флагах, но логически это другое условие, а не правильное преобразование.
Проверь себя · 1/3разбор после ответа
Поле
country содержит ровно одно значение на пользователя. Какое условие в фильтре никогда не будет истинным?Ещё вопросы по теме «Булева логика и фильтры»
- Какому выражению со скобками эквивалентно условие `is_new = 1 OR is_paying = 1 AND has_coupon = 1`, если `AND` выполняется раньше `OR`?
- В фильтре написали `country = 'RU' AND device = 'ios' OR device = 'android'`. Какой набор строк реально пройдёт фильтр при стандартном приоритете, где `AND` сильнее `OR`?
- Вы хотите выбрать строки, которые не относятся к `country = 'RU' OR country = 'KZ'`. Какое выражение соответствует `NOT (country = 'RU' OR country = 'KZ')` по правилу де Моргана?
- В таблице пользователей есть флаги `has_email_optin` и `has_push_optin` (0 или 1). Нужно выбрать пользователей, у которых включён ровно один канал (email или push, но не оба). Какое условие корректно?
- В сегмент нужно включить пользователей, у которых активен хотя бы один из флагов: `is_student = 1` или `has_coupon = 1`. Какое условие соответствует формулировке «хотя бы один»?
- Все вопросы по «Булева логика и фильтры» →