Логика

Основные логические блоки

Блоки ветвления

Если условие* истинно, выполнить действие

Если условие* истинно, выполнить действие, иначе выполнить другое действие

* Логическое условие - выражение, результатом выполнения которого является «истина» или «ложь»

Вы можете модифицировать эти блоки, добавляя к ним больше условий

Логические И и ИЛИ

Если хотя бы одно из простых высказываний, связанных операцией И, будет ложным, то и составное высказывание будет ложным

Если хотя бы одно из простых высказываний, связанных операцией ИЛИ, будет истинным, то и составное высказывание будет истинным

Операции сравнения

Обычно используются с числами. Операции на проверку равенства могут также использоваться с текстом

Вы можете сравнивать только данные одного типа (нельзя сравнивать число и текст)

Истина/Ложь

Логическая переменная

Логическое НЕ

Логическая операция НЕ инвертирует высказывание, стоящее за ней

Например, следующее выражение (пусть и бесполезное по своей сути) вернет истину

Тернарная условная операция

Тернарную операцию можно определить как операцию, возвращающую свое второе выражение в зависимости от значения логического выражения, заданного первым выражением. Алгоритм работы операции следующий:

  1. Вычисляется логическое выражение
  2. Если логическое выражение истинно, то вычисляется значение выражения выражение 1, в противном случае — значение выражения выражение 2
  3. Вычисленное значение возвращается

Вычисляется только одно из выражений: выражение 1 или выражение 2. Это соответствует принципу ленивых вычислений

Пример

  1. Если обе простых кнопки нажаты, то переменой «цвет» присвоить значение «синий», иначе - «красный»
  2. Задать простой лампочке цвет, сохраненный в переменной «цвет»

Что эквивалентно следующей конструкции

Истина с вероятностью

Логическая переменная, истина которой будет зависеть от указанной вероятности