Основные логические блоки
![](/files/0.16/ru/2260867019/2260867020/1/1666788955715/image-1.png)
Блоки ветвления
Если условие* истинно, выполнить действие
![](/files/0.16/ru/2260867019/2260867021/1/1666788955721/image-2.png)
Если условие* истинно, выполнить действие, иначе выполнить другое действие
![](/files/0.16/ru/2260867019/2260867022/1/1666788955727/image-3.png)
* Логическое условие - выражение, результатом выполнения которого является «истина» или «ложь»
Вы можете модифицировать эти блоки, добавляя к ним больше условий
![](/files/0.16/ru/2260867019/2273052529/2/1676983699261/image-14_ru.gif)
Логические И и ИЛИ
![](/files/0.16/ru/2260867019/2260867024/1/1666788960081/image-4.png)
Если хотя бы одно из простых высказываний, связанных операцией И, будет ложным, то и составное высказывание будет ложным
Если хотя бы одно из простых высказываний, связанных операцией ИЛИ, будет истинным, то и составное высказывание будет истинным
Операции сравнения
Обычно используются с числами. Операции на проверку равенства могут также использоваться с текстом
![](/files/0.16/ru/2260867019/2260867025/1/1666788960092/image-5.png)
Вы можете сравнивать только данные одного типа (нельзя сравнивать число и текст)
Истина/Ложь
Логическая переменная
![](/files/0.16/ru/2260867019/2260867026/1/1666788960100/image-6.png)
Логическое НЕ
Логическая операция НЕ инвертирует высказывание, стоящее за ней
![](/files/0.16/ru/2260867019/2260867027/1/1666788960108/image-7.png)
Например, следующее выражение (пусть и бесполезное по своей сути) вернет истину
![](/files/0.16/ru/2260867019/2260867028/1/1666788960116/image-8.png)
Тернарная условная операция
![](/files/0.16/ru/2260867019/2260867029/1/1666788960126/image-10.png)
Тернарную операцию можно определить как операцию, возвращающую свое второе выражение в зависимости от значения логического выражения, заданного первым выражением. Алгоритм работы операции следующий:
- Вычисляется логическое выражение
- Если логическое выражение истинно, то вычисляется значение выражения выражение 1, в противном случае — значение выражения выражение 2
- Вычисленное значение возвращается
Вычисляется только одно из выражений: выражение 1 или выражение 2. Это соответствует принципу ленивых вычислений
Пример
![](/files/0.16/ru/2260867019/2260867030/1/1666788960134/image-11.png)
- Если обе простых кнопки нажаты, то переменой «цвет» присвоить значение «синий», иначе - «красный»
- Задать простой лампочке цвет, сохраненный в переменной «цвет»
Что эквивалентно следующей конструкции
![](/files/0.16/ru/2260867019/2260867031/1/1666788960143/image-12.png)
Истина с вероятностью
![](/files/0.16/ru/2260867019/2260867032/1/1666788960150/image-13.png)
Логическая переменная, истина которой будет зависеть от указанной вероятности