Урок 9. Логические операции И (&&) и ИЛИ (II)

Частенько возникают такие ситуации кода вы имеете несколько различных условий, а принять вам необходимо только одно из них. Чтобы разобраться, давайте возьмем наш с вами пример. Теперь у нас будет два условия: погода солнечная, либо погода облачная. В обоих из наших случаев if должен отработать, так ка оба из этих условий удовлетворяют нашему запросу. А как же написать программу, чтобы она правильно работал? Как один из вариантов, мы можем вложить один if в другой, тем самым у нас получится условие внутри условия. JavaScript позволяет это сделать, но такой вариант нам не подойдет. Для большей наглядности ниже приведен код данного варианта программы:

Данный вариант является на 100% рабочим. Но что же у нас получилось? Код довольно сильно усложнился, его трудно читать, но по сути функционал остался прежним. Кроме всего, в коде появились две абсолютно идентичные строчки, а это является первым признаком неправильной логики в коде программы (не забывайте об этом!). При этом в программе поменялось только одно условие и ничего более.

Давайте еще раз попробуем сформулировать нашу с вами задачу: «Если погода будет солнечной или облачной, то зонт не нужен, иначе же программа должна советовать взять зонт». Это почти дословное описание нашего с вами оператора if в прошлой версии программы, но с одним большим отличием – здесь появилось слово ИЛИ и еще одно дополнительное условие.

В программировании существует такой логический оператор как – ИЛИ, математики же называют его дизъюнкцией. Записываю же его ка две вертикальные черточки (||). Данный оператор как рас необходим в подобных ситуациях, как у нас. Но как же он работает? Его применяют к булевым значениям, он возвращает true если хоть одно из значений будет равно true. Если же оба значения false, то оператор ИЛИ вернет false.

Примеры с оператором ИЛИ:

 

Теперь давайте попробуем применить данный оператор к нашему с вами примеру. Для начала давайте снова проговорим нашу с вами формулировку задачи: «Если погода будет солнечной или облачной, то зонт не нужен, иначе же программа должна советовать взять зонт». Теперь же давайте напишем программу по этой формулировке:

О данной аналогии давайте так же разберемся с логическим оператором И или если говорить на языке математиков – конъюнкцией. Ее записывают с помощью двух амперсанд (&&) и следит за тем, чтобы все из условий были выполнены. Те есть если для оператора ИЛИ достаточно только одного true для продолжения работы, то для оператора И достаточно всего одного false, чтобы работа прекратилась.

Давайте занесем данный оператор и в нашу программу.

Когда вы собираетесь идти вы не только смотрите прогноз погоды, так же вы смотрите в окно  — так как прогноз погоды мог быть не точным. Поэтому, вы оставите зонт дома только в том случае, если не только прогноз будет благоприятный, но И за окном действительно не идет дождь.

Теперь формулировка нашей задачи будет звучать так: «Если погоду обещали солнечную ИЛИ  облачный И за окном тоже солнечно ИЛИ облачно, ТО зонт можно не брать»:

Для большинства из вас данный программный код покажется сложным и непонятным, но вам необходимо в нем как следует разобраться и все понять. Не жалейте на это свое драгоценное время. Ведь это и является основной логики, без нее вы не сможете написать ни одну программу.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *