Ещё пример задания:
В таблице приведены запросы к поисковому серверу. Расположите номера запросов в порядке возрастания количества страниц, которые найдет поисковый сервер по каждому запросу. Для обозначения логической операции «ИЛИ» в запросе используется символ |, а для логической операции «И» – &.
1) принтеры & сканеры & продажа
2) принтеры & сканеры
3) принтеры | сканеры
4) принтеры | сканеры | продажа
Решение (вариант 1, рассуждение с использованием свойств операций «И» и «ИЛИ»):
меньше всего результатов выдаст запрос с наибольшими ограничениями – первый (нужны одновременно принтеры, сканеры и продажа)
на втором месте – второй запрос (одновременно принтеры и сканеры)
далее – третий запрос (принтеры или сканеры)
четвертый запрос дает наибольшее количество результатов (принтеры или сканеры или продажа)
таким образом, верный ответ – 1234 .
Возможные проблемы: нужно внимательно читать условие, так как в некоторых задачах требуется перечислить запросы в порядке убывания количества результатов, а в некоторых – в порядке возрастания можно ошибиться в непривычных значках: «И» = &, «ИЛИ» = | (эти обозначения привычны для тех, кто программирует на языке Си) можно перепутать значение операций «И» и «ИЛИ», а также порядок выполнения цепочки операций (сначала – «И», потом – «ИЛИ») для сложных запросов не всегда удастся так просто расположить запросы по возрастанию (или убыванию) ограничений |
Решение (вариант 2, через таблицы истинности):
каждое из условий можно рассматривать как сложное высказывание
обозначим отдельные простые высказывания буквами:
A: принтеры (на странице есть слово «принтеры»)
B: сканеры
C: продажа
запишем все выражения-запросы через логические операции
, , ,
здесь присутствуют три переменные, А, B и C (хотя второе и третье выражения от С не зависят!), поэтому для составления таблицы истинности нужно рассмотреть 8 = 232333 всевозможных комбинаций этих логических значений
выражение равно 1 (истинно) только при , в остальных случаях – равно 0 (ложно)
выражение равно 1 только при , в остальных случаях – равно 0
выражение равно 0 только при , в остальных случаях – равно 1
выражение равно 0 только при , в остальных случаях – 1
запишем результаты пп. 5-8 в виде таблицы истинности
A | B | C | | | | |
0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 1 | 0 | 0 | 0 | 1 |
0 | 1 | 0 | 0 | 0 | 1 | 1 |
0 | 1 | 1 | 0 | 0 | 1 | 1 |
1 | 0 | 0 | 0 | 0 | 1 | 1 |
1 | 0 | 1 | 0 | 0 | 1 | 1 |
1 | 1 | 0 | 0 | 1 | 1 | 1 |
1 | 1 | 1 | 1 | 1 | 1 | 1 |
по таблице видим, что наименьшая «область действия» у первого выражения, поисковый сервер выдаст наименьшее число запросов
область, где , включает в себя1 всю область, где и еще один вариант, поэтому «поисковик» выдаст больше запросов, чем для первого случая
аналогично делаем вывод, что область включает всю область и расширяет ее, а область – это расширение области
таким образом, верный ответ – 1234 .
Возможные проблемы: решение достаточно громоздко, хотя позволяет с помощью простых операций решить задачу, не рискуя ошибиться при вычислениях «в уме» в сложных случаях если переменных более трех, таблица получается большая, хотя заполняется несложно |
Решение (вариант 3, через диаграммы):
запишем все ответы через логические операции
, , ,
покажем области, определяемые этими выражениями, на диаграмме с тремя областями
сравнивая диаграммы, находим последовательность областей в порядке увеличения: (1,2,3,4), причем каждая следующая область в этом ряду охватывает целиком предыдущую (как и предполагается в задании, это важно!)
таким образом, верный ответ – 1234 .
Возможные проблемы: получается громоздкий рисунок, если используется более трех переменных (более трех кругов) |
1 Каждая следующая область в полученном решении должна полностью включать предыдущую. Если это не так, тогда или вы ошиблись при построении таблицы истинности, или (не дай Бог!) в условии есть ошибка.