Основные логические блоки
![](/files/latest/ru/2302449627/2302449653/1/1710344753860/image-1.png)
Блоки ветвления
Если условие* истинно, выполнить действие
![](/files/latest/ru/2302449627/2302449652/1/1710344753858/image-2.png)
Если условие* истинно, выполнить действие, иначе выполнить другое действие
![](/files/latest/ru/2302449627/2302449651/1/1710344753857/image-3.png)
* Логическое условие - выражение, результатом выполнения которого является «истина» или «ложь»
Вы можете модифицировать эти блоки, добавляя к ним больше условий
![](/files/latest/ru/2302449627/2302449628/1/1710344748115/image-14_ru.gif)
Логические И и ИЛИ
![](/files/latest/ru/2302449627/2302449650/1/1710344753855/image-4.png)
Если хотя бы одно из простых высказываний, связанных операцией И, будет ложным, то и составное высказывание будет ложным
Если хотя бы одно из простых высказываний, связанных операцией ИЛИ, будет истинным, то и составное высказывание будет истинным
Операции сравнения
Обычно используются с числами. Операции на проверку равенства могут также использоваться с текстом
![](/files/latest/ru/2302449627/2302449649/1/1710344753854/image-5.png)
Вы можете сравнивать только данные одного типа (нельзя сравнивать число и текст)
Истина/Ложь
Логическая переменная
![](/files/latest/ru/2302449627/2302449648/1/1710344753852/image-6.png)
Логическое НЕ
Логическая операция НЕ инвертирует высказывание, стоящее за ней
![](/files/latest/ru/2302449627/2302449647/1/1710344753850/image-7.png)
Например, следующее выражение (пусть и бесполезное по своей сути) вернет истину
![](/files/latest/ru/2302449627/2302449646/1/1710344753849/image-8.png)
Тернарная условная операция
![](/files/latest/ru/2302449627/2302449645/1/1710344753847/image-10.png)
Тернарную операцию можно определить как операцию, возвращающую свое второе выражение в зависимости от значения логического выражения, заданного первым выражением. Алгоритм работы операции следующий:
- Вычисляется логическое выражение
- Если логическое выражение истинно, то вычисляется значение выражения выражение 1, в противном случае — значение выражения выражение 2
- Вычисленное значение возвращается
Вычисляется только одно из выражений: выражение 1 или выражение 2. Это соответствует принципу ленивых вычислений
Пример
![](/files/latest/ru/2302449627/2302449644/1/1710344753846/image-11.png)
- Если обе простых кнопки нажаты, то переменой «цвет» присвоить значение «синий», иначе - «красный»
- Задать простой лампочке цвет, сохраненный в переменной «цвет»
Что эквивалентно следующей конструкции
![](/files/latest/ru/2302449627/2302449643/1/1710344753844/image-12.png)
Истина с вероятностью
![](/files/latest/ru/2302449627/2302449642/1/1710344753842/image-13.png)
Логическая переменная, истина которой будет зависеть от указанной вероятности