Вопрос пользователя Константин Давыдов в уроке «Boolean», курс «Основы PHP»

Константин Давыдов

Никак не смог понять, почему тут в итоге получается false.

(A && (B && A)) == ((C && B) && C)

Вроде же в левой части получается false и в правой false?

11 0

Kirill Mokevnin

Попробуйте поэкспериментировать тут: https://repl.it/languages/php

Что получается?

0

Константин Давыдов

Нет :( Видимо я что-то не так понял. Разве не так должно быть?

(true && (false && true)) == ((false && false) && false)
0

Kirill Mokevnin

А вы можете пошагово расписать как раскрываете это выражение?

0

Константин Давыдов

Левая часть: В начале в скобках: false && true -> false, потом true && fase -> false.

Правая часть: В начале в скобках: false && false -> false, потом false && false -> false.

В итоге: false == false --> true

0

Kirill Mokevnin

Ага, в задании ошибка, я поправлю. Спасибо!

0

Kirill Mokevnin

Эх, я и вас и сам себя запутал. Так ведь true это и есть правильный ответ. В задаче требовалось найти все истинные.

0

Константин Давыдов

Так если я сам уже не запутался, то он как раз и не засчитался как истинный.

0

Kirill Mokevnin

хм, а сейчас тоже не засчитывается?

0

Константин Давыдов

Да, если этот пример, я помечаю как истинное утверждение, то результат теста помечается как отрицательный. Без него, всё засчитывается.

0

Александр О.

Вроде же в левой части получается false и в правой false?

Выражение здесь следует считать однозначно истинным, если при любом наборе входных параметров (A, B, C) это выражение возвращает true.

Легко проверить, что выражение ($A && ($B && $A)) == (($C && $B) && $C) не всегда возвращает true, в отличие от других представленных выражений.

0

Константин Давыдов

Теперь понятно. Благодарю.

0

Есть вопрос или хотите участвовать в обсуждении?

Зарегистрируйтесь или войдите в свой аккаунт

Отправляя форму, вы соглашаетесь c «Политикой конфиденциальности» и «Условиями оказания услуг».

Похожие вопросы

Алексей Кальмук 13 июня 2018 →

не пойму. вот выражение со всеми условия ми, а выдает ошибку return ($ss % 2 != 1) >= 1000

Julia BG 19 марта 2018 →

Ребята, привет Мне кажется задание написано немного некорректно или я чего-то недопонимаю... Тест проходит...

Вячеслав Михайлов 08 марта 2018 →

Наверное я забежал впереди паровоза и сделал задание через if с возвратом true и false, но суть не в этом. ...

Сергей Мелодин 16 января 2018 →

Мне кажется, что данные видео необходимо расширить текстовыми примечаниями на тему именования переменных: и...

Али Хан 21 сентября 2017 →

Можете разъяснить почему "(A && (A || B)) == A" истинное утверждение?