Форум » Логические выражения » Задачаf 18.165 » Ответить

Задачаf 18.165

Поляков: Ирина Д. пишет: [quote]у меня есть ощущение, что я чего-то не понимаю. Например, ege18 №165, 166 или задание p-23. Итоговая таблица решений (http://kpolyakov.spb.ru/download/bitwise.pdf, стр.6) гласит, что если B(x)=неP+Q, то Amax=Q. В номере 165 у меня так и получилось после преобразований: Получается в таблице не все варианты или как? Можно ли вообще ей пользоваться и в каких случаях? Помогите пожалуйста разобраться. [/quote] Вы неверно ввели обозначения. В рамках статьи, на которую вы ссылаетесь, обозначения без инверсий относятся к случаю "НЕ равно". То есть обозначения нужно заменить на обратные. Тогда в задаче 165 получается (после упрощений)[pre2]не A + P + не Q[/pre2]Это задача 2, вторая строчка в таблице. Ответ - соответствующее число для того слагаемого, которое без инверсии, то есть - p (13).

Ответов - 3

Поляков: Ирина Д. пишет: Правильно ли я поняла, что если получилось после преобразований (не P+Q), то для поиска Amin беру P*не Q (побитово), а если получила (P+не Q), то в ответе (не P* Q) (побитово). Аналогично для Amax: получилось после преобразований (не P+Q), значит в ответе переменная без отрицания - Q, а если (P+не Q), то в ответе P. Да, верно. Только важно соблюдать обозначения - иначе инверсии могут получиться не у тех слагаемых, у которых нужно. Два замечания: 1) ориентироваться на таблицу и ориентировать детей на ее заучивание я бы не стал, это просто натаскивание, которое никакого смысла не имеет. Таблица была сделана, главным образом, для того, чтобы показать, что есть много случаев, поэтому "простые" решения через битовые операции не проходят (например, предлагали всегда брать побитовое логическое произведение p и q). 2) сейчас лучшим я считаю метод, который изложен во второй статье. Он позволяет решать все единообразно, сводя к импликации без инверсий.

Вилена Снегирева: Мне кажется, что в этой задаче (165) ответ наибольшее А =29 после преобразований имеем: неА or Z13 or notZ39 => A = Z13 or notZ39 39=100111 not 39 = 011000 13=001101 011000 & 001101 ----------- 011101 = 29 = A Ответ: А наибольшее = 29 НО не 13!

Поляков: Вилена Снегирева пишет: после преобразований имеем: неА or Z13 or notZ39 У меня не так получается. Посмотрите здесь. неА or Z13 or notZ39 => A = Z13 or notZ39 Так делать нельзя. Это не алгебра, это логика. И множества. Из того, что A + B = U (универсальное множество), НЕ следует, что A = not B. На самом деле, множество A должно включать множество not B. 39=100111 not 39 = 011000 Нельзя так механически переходить от логических выражений к операциям с числами! Или это нужно доказывать. Когда-то так можно делать, когда-то нет, так что механическое применение этого правила == хождению по минному полю. Ответ: А наибольшее = 29 В этом случае при x = 18 выражение ложно.




полная версия страницы