Внутренний язык программирования 1С 8.3 для начинающих программистов: сложные логические выражения в 1С
Автор уроков и преподаватель школы: Владимир Милькин
На прошлом уроке мы познакомились с логическим типом данных, который может принимать одно из двух значений Истина или Ложь. Также мы узнали о существовании простейших логических выражений. Они состоят из двух данных (число, строка или дата) и операции сравнения между ними. Результатом логического выражения является Истина или Ложь.
Вы думали самое сложное позади? Как бы не так! Сегодня вам придется сделать ещё один огромный шаг вперед на пути к профессии программиста. И называется этот шаг Сложные логические выражения.
Наберитесь сил, читайте, вчитывайтесь, перечитывайте. Не отчаивайтесь, если что-то не будет ясно с первого раза. Удивительно как раз, если сразу поймёте всё. Вы читаете ознакомительную версию урока, полноценные уроки находятся здесь. И как всегда тщательно выполняйте задания и задавайте вопросы.
Ещё скажу, что сразу после изучения этого урока, начнутся настоящие чудеса программирования!
Сложные логические выражения
Оказывается из простых логических выражений, изученных нами на прошлом уроке можно составлять сложные логические выражения.
Для этого существуют специальные логические операции: И, Или, Не.
Правила работы логической операции И
А (левая часть) | Б (правая часть) | А И Б | Пример |
---|---|---|---|
Истина | Истина | Истина | (2 < 3) И (10 = 10) |
Истина | Ложь | Ложь | (2 < 3) И (10 <> 10) |
Ложь | Истина | Ложь | (10 <> 10) И (2 < 3) |
Ложь | Ложь | Ложь | (1 = 2) И (3 = 5) |
Таким образом, логическое выражение, составленное при помощи операции И, верно тогда и только тогда, когда верны оба выражения, стоящие слева и справа от этой операции.
Для лучшего понимания представьте, что значение Истина это 1, Ложь это 0, а логическая операция И это умножение:
А (левая часть) | Б (правая часть) | А И Б |
---|---|---|
1 | 1 | 1 |
1 | 0 | 0 |
0 | 1 | 0 |
0 | 0 | 0 |
Правила работы логической операции Или
А (левая часть) | Б (правая часть) | А Или Б | Пример |
---|---|---|---|
Истина | Истина | Истина | (2 < 3) Или (10 = 10) |
Истина | Ложь | Истина | (2 < 3) Или (10 <> 10) |
Ложь | Истина | Истина | (10 <> 10) Или (2 < 3) |
Ложь | Ложь | Ложь | (1 = 2) Или (3 = 5) |
Таким образом, логическое выражение, составленное при помощи операции Или, истинно, если верно хотя бы одно из выражений, стоящих слева и справа от этой операции. Вы читаете ознакомительную версию урока, полноценные уроки находятся здесь.
Для лучшего понимания представьте, что значение Истина это 1, Ложь это 0, а логическая операция Или это сложение:
А (левая часть) | Б (правая часть) | А Или Б |
---|---|---|
1 | 1 | 1 |
1 | 0 | 1 |
0 | 1 | 1 |
0 | 0 | 0 |
Правила работы логической операции Не
А | Не А | Пример |
---|---|---|
Истина | Ложь | Не (2 < 3) |
Ложь | Истина | Не (10 = 5) |
Таким образом, логическое выражение, составленное при помощи операции Не, верно, тогда и только тогда, когда неверно выражение, стоящее справа от этой операции. Операцию Не ещё называют логическим отрицанием.
Для лучшего понимания представьте, что значение Истина это 1, а Ложь это 0:
А | Не А |
---|---|
1 | 0 |
0 | 1 |
Задание №16. Вычислите (пока без помощи компьютера) результат следующих логических выражений.
- (1 = 1) И (2 = 2)
- Не (10 > 5)
- ("Солнце" = "Луна") Или ("Юпитер" = "Юпитер")
- Не ("Солнце" = "Луна")
- (10 <> 5) Или (5 = 5)
- (Истина) Или (Ложь)
- Не (Истина)
- (Ложь) И (Истина)
- (Ложь) Или (Истина)
Попытайтесь выполнить всё сами и только потом смотрите ответы ниже.