Тернарные операции
Тернарная условная операция имеет 3 аргумента и возвращает свой второй или третий операнд в зависимости от значения логического выражения, заданного первым операндом. Синтаксис тернарной операции в языке Си
Условие ? Выражение1 : Выражение2;
УсловиеВыражение1Выражение2
123456789101112131415
#define _CRT_SECURE_NO_WARNINGS // для возможности использования scanf#include <stdio.h>#include <stdlib.h> // для использования функции systemint main() { int key; // объявляем целую переменную key system(«chcp 1251»); // переходим в консоли на русский язык system(«cls»); // очищаем окно консоли printf(«Введите номер пункта, 1 или 2: «); scanf(«%d», &key); // вводим значение переменной key key == 1 ? printf(«\n Выбран первый пункт») : (key == 2 ? printf(«\n Выбран второй пункт») : printf(«\n Первый и второй пункты не выбраны»)); getchar(); getchar(); return 0;}
Условный оператор if
Условный оператор if может использоваться в форме полной или неполной развилки.
Неполная развилка | Полная развилка |
1234 if (Условие){ БлокОпераций1;} |
12345678 if (Условие){ БлокОпераций1;}else{ БлокОпераций2;} |
В случае неполной развилки если Условие истинно, то БлокОпераций1 выполняется, если Условие ложно, то БлокОпераций1 не выполняется.
В случае полной развилки если Условие истинно, то выполняется БлокОпераций1, иначе выполняется БлокОпераций2.БлокОпераций может состоять из одной операции. В этом случае наличие фигурных скобок, ограничивающих блок, необязательно.
Основными операциями, проверяемыми внутри условного блока, являются операции отношения.Пример на C:
1234567891011121314
#define _CRT_SECURE_NO_WARNINGS // для возможности использования scanf#include <stdio.h>int main(){ int k; // объявляем целую переменную k printf(«k= «); // выводим сообщение scanf(«%d», &k); // вводим переменную k if (k >= 5) // если k>5 printf(«%d >= 5», k); // выводим «ЗНАЧЕНИЕ >= 5» else // иначе printf(«%d < 5», k); // выводим «ЗНАЧЕНИЕ < 5» getchar(); getchar(); return 0;}
ifПример на C
123456789101112131415161718
#define _CRT_SECURE_NO_WARNINGS // для возможности использования scanf#include <stdio.h>#include <stdlib.h> // для использования функции systemint main() { int key; // объявляем целую переменную key system(«chcp 1251»); // переходим в консоли на русский язык system(«cls»); // очищаем окно консоли printf(«Введите номер пункта, 1 или 2: «); scanf(«%d», &key); // вводим значение переменной key if (key == 1) // если key = 1 printf(«\n Выбран первый пункт»); // выводим сообщение else if (key == 2) // иначе если key = 2 printf(«\n Выбран второй пункт»); // выводим сообщение else // иначе printf(«\n Первый и второй пункты не выбраны»); // выводим сообщение getchar(); getchar(); return 0;}
Результат выполнения
При использовании вложенной формы оператора if опция else связывается с последним оператором if. Если требуется связать опцию else с предыдущим оператором if, внутренний условный оператор заключается в фигурные скобки:
123456789101112131415161718
#define _CRT_SECURE_NO_WARNINGS // для возможности использования scanf#include <stdio.h>#include <stdlib.h> // для использования функции systemint main() { int key; // объявляем целую переменную key system(«chcp 1251»); // переходим в консоли на русский язык system(«cls»); // очищаем окно консоли printf(«Введите номер пункта, 1 или 2: «); scanf(«%d», &key); // вводим значение переменной key if (key != 1) { // если key не равен 1 if (key == 2) // если key равен 2 printf(«\n Выбран второй пункт»); // вывод сообщения } // если key — не 1 и не 2, то ничего не выводится else // иначе, если key равен 1 printf(«\n Выбран первый пункт»); // вывод сообщения getchar(); getchar(); return 0;}
Функция ЕСЛИ: примеры с несколькими условиями.
Итак, мы разобрались, как работает эта одна из самых часто применяемых функций. Обычная формула ЕСЛИ, которая проверяет одно условие, очень проста и проста в написании.
Но что, если ваши данные требуют более сложных логических проверок с несколькими условиями? В этом случае вы можете включить несколько функций ЕСЛИ в одну формулу, и это будет называться вложенными условиями, своего рода «ЕСЛИ в ЕСЛИ». Самым большим преимуществом такого подхода является то, что он позволяет проверять более одного условия и возвращать разные значения в зависимости от результатов этих проверок, и все это при помощи одной формулы.
Вот типичный пример «ЕСЛИ в ЕСЛИ». Предположим, у вас в таблице Excel есть список студентов в столбце A и их оценки по тестам в столбце B. Вы хотите классифицировать оценки по следующим условиям:
- «Отлично»: более 249 баллов
- «Хорошо»: от 249 до 200 включительно
- «Удовлетворительно»: от 199 до 150 включительно
- «Плохо»: до 150.
А теперь давайте напишем вложенную формулу ЕСЛИ на основе вышеуказанных критериев. Хорошей практикой считается начинать с самого важного условия и максимально упростить свои функции. Наша вложенная формула IF в Excel выглядит следующим образом:
Многие считают, что вложенные условия слишком сложны. Попробуйте взглянуть на это под другим углом:
На самом деле формула указывает Excel, что нужно выполнить логическую проверку первого условия и, если оно выполнено, вернуть значение, указанное в аргументе ИСТИНА . Если условие 1-й проверки не выполнено, то проверьте 2-е выражение, и так далее.
ЕСЛИ ( проверить, если B2> = 249, если ИСТИНА — вернуть «отлично», или же ЕСЛИ ( проверить, если B2> = 200, если ИСТИНА — вернуть «хорошо», или жеЕСЛИ ( проверить, если B2> 150, если ИСТИНА — вернуть «Удовлетворительно», если ЛОЖЬ -вернуть «Плохо»)))
Практический пример использования логических функций
В примере ниже попробуем отчасти применять описанные выше функции для решения задачки, приближенной к настоящей ситуации с расчетом премии, зависящей от определенных критерий.
В качестве начальных данных – таблица со сведениями о работниках, в которой указан их пол и возраст.
Нам нужно произвести расчет премии. Главные условия, от которых зависит размер премии:
- величина обыкновенной премии, которую получат все сотрудники без исключения – 3 000 руб.;
- сотрудницам дамского пола положена завышенная премия – 7 000 руб.;
- юным сотрудникам (младше 1984 г. рождения) положена завышенная премия – 7 000 руб.;
Выполним нужные расчеты, используя логические функции.
Встаем в первую ячейку столбца, в которой желаем посчитать размеры премий и щелкаем клавишу “Вставить функцию” (слева от сроки формул).
В открывшемся Мастере функций избираем категорию “Логические”, потом в предложенном списке операторов кликаем по строке “ЕСЛИ” и нажимаем OK.
Сейчас нам необходимо задать аргументы функции. Потому что у нас не одно, а два условия получения завышенной премии, при этом необходимо, чтоб производилось хотя бы одно из их, чтоб задать логическое выражение, воспользуемся функцией ИЛИ. Находясь в поле для ввода значения аргумента “Лог_выражение” кликаем в главный рабочей области книжки на маленькую стрелку вниз, расположенную в левой высшей части окна программки, где обычно отображается адресок ячейки. В открывшемся перечне функций избираем оператор ИЛИ, если он представлен в списке (либо можно кликнуть на пункт “Остальные функции” и избрать его в новеньком окне Мастера функций, как мы вначале сделали для выбора оператора ЕСЛИ).
Мы переключимся в окно аргументов функци ИЛИ
Тут задаем наши условия получения премии в 7000 руб.:
год рождения позднее 1984 года;
пол – дамский;
Сейчас обращаем внимание на строчку формул. Кликаем в ней на заглавие начального оператора ЕСЛИ, чтоб переключиться в аргументы данной функции.
Заполняем аргументы функции и щелкаем OK:
в значении “Правда” пишем цифру 7000;
в значении “Ересь” указываем цифру 3000;
Итог работы логических операторов отобразится в первой ячейке столбца, которую мы избрали
Как мы можем созидать, окончательный вид формулы смотрится последующим образом: =ЕСЛИ(ИЛИ(C2>1984;D2=»жен.»);7000;3000) . К слову, заместо использования Мастера функций можно было вручную составить и прописать данную формулу в требуемой ячейке.
Чтоб высчитать премию для всех служащих, воспользуемся Маркером наполнения. Наведем курсор на правый нижний угол ячейки с формулой. Опосля того, как курсор воспримет форму темного крестика (это и есть Маркер наполнения), зажимаем левую клавишу мыши и протягиваем выделение вниз, до крайней ячейки столбца.
Все готово. Благодаря логическим операторам мы получили заполненные данные для столбца с премиями.
Логические функции в Excel
В данной статье мы разберем сущность логических функций Excel: И, ИЛИ, ИСКЛИЛИ и НЕ. И разберем примеры решения логических функций, демонстрирующие их применение в MS Excel.
Вы узнаете, как расширить использование логических операторов и создать логические проверки для выполнения более сложных вычислений и более эффективного анализа данных. Логические функции, такие как И, ИЛИ, ИСКЛИЛИ и НЕ, помогут вам в этом.
Логические функции Excel – обзор
Microsoft Excel предоставляет четыре логические функции для работы с логическими значениями: И, ИЛИ, ИСКЛИЛИ и НЕ.
Если вы хотите выполнить более одного сравнения в своей формуле или проверить несколько условий вместо одного, используете эти логические функции.
Как и логические операторы, логические функции Excel возвращают значения ИСТИНА или ЛОЖЬ.
В следующей таблице приведено краткое описание того, что делает каждая логическая функция.
Логическая функция | Описание | Пример формулы | Описание формулы |
И | Возвращает значение ИСТИНА, если все аргументы имеют значение ИСТИНА | =И(A2>=10; B2=10; B2=10; B2=10) | Формула возвращает ЛОЖЬ, если значение в ячейке A1 больше или равно 10; ИСТИНА в противном случае. |
В дополнение к четырем логическим функциям, описанным выше, Microsoft Excel предоставляет 3 условные функции: ЕСЛИ, ЕСЛИОШИБКА и ЕСНД.
Логическая функция И в Excel
Функция И наиболее популярна из логических функций. Она пригодится, когда вам нужно проверить несколько условий и убедиться, что все они выполнены. Технически, логическая функция И проверяет условия, которые вы указываете, и возвращает ИСТИНА, если в результате вычисления всех аргументов получается значение ИСТИНА, ЛОЖЬ в противном случае.
Синтаксис логической функции И выглядит следующим образом:
=И(логическое_значение1; …)
Теперь давайте рассмотрим некоторые примеры формул, демонстрирующие, как использовать логическую функцию И в формулах Excel.
Формула | Описание |
=И(A2=”Яблоки”; B2>C2) | Логическая функция возвращает ИСТИНА, если A2 содержит «Яблоки», а B2 больше C2, ЛОЖЬ в противном случае. |
=И(B2>50; B2=C2) | Логическая функция возвращает ИСТИНА, если B2 больше 50, а B2 равно C2, ЛОЖЬ в противном случае. |
=И(A2=”Яблоки”; B2>=120; B2>C2) | Логическая функция возвращает ИСТИНА, если A2 содержит «Яблоки», B2 больше или равно 120, а B2 больше C2, ЛОЖЬ в противном случае. |
Логическая функция ИЛИ в Excel
Как логическая функция И, функция Excel ИЛИ является базовой логической функцией, которая используется для сравнения двух значений или операторов.
Разница в том, что логическая функция ИЛИ возвращает ИСТИНА, если хотя бы один, если аргументы оцениваются как ИСТИНА, и возвращает ЛОЖЬ, если все аргументы ЛОЖЬ.
Логическая функция ИЛИ доступна во всех версиях MS Excel.
Синтаксис логической функции Excel ИЛИ очень похож на функцию И:
=ИЛИ(логическое_значение1; ;…)
Теперь, давайте запишем несколько формул, чтобы вы поняли, как работает логическая функция ИЛИ в Excel.
Формула | Описание |
=ИЛИ(A2=”Яблоки”; A2=”Бананы”) | Логическая функция возвращает ИСТИНУ, если A2 содержит «Яблоки» или «Бананы», в противном случае ЛОЖЬ. |
=ИЛИ(B2>=135; C2>=55) | Логическая функция возвращает ИСТИНУ, если B2 больше или равен 135 или C2 больше или равно 55, ЛОЖЬ в противном случае. |
=ИЛИ(B2=””; C2=””) | Логическая функция возвращает ИСТИНУ, если ячейки B2 и/или C2 пустые, ЛОЖЬ в противном случае. |
Логические функции в Excel – Использование логической функции ИЛИ
Как и логическая функция Excel И, ИЛИ широко используется для расширения полезности других функций Excel, которые выполняют логические проверки, например, функция ЕСЛИ.
Логическая функция ИСКЛИЛИ в Excel
В Excel 2013 Microsoft представила функцию ИСКЛИЛИ, которая является логической функцией исключающего ИЛИ. Для тех, кто не знаком с понятием «Исключающего ИЛИ», сначала может быть немного сложно понять суть логической функции, но, надеюсь, приведенное ниже объяснение иллюстрируемое примерами формул поможет прояснить суть.
Синтаксис логической функции ИСКЛИЛИ идентичен синтаксису ИЛИ:
=ИСКЛИЛИ(логическое_значение1; ;…)
В простейшей версии формулы ИСКЛИЛИ, содержащей только 2 логических оператора, логическая функция Excel ИСКЛИЛИ вернет ИСТИНУ, если любой из аргументов имеет значение ИСТИНА. Если оба аргумента ИСТИНА, либо оба ЛОЖЬ, ИСКЛИЛИ возвращает ЛОЖЬ. Рассмотрим примеры формул:
Формула | Результат | Описание |
=ИСКЛИЛИ(1>0; 2 |
Примеры построения таблицы истинности
Задача
Построим таблицу истинности и решим выражение\( F = (A \vee B) \wedge (¬A \vee ¬B)\). Будем пользоваться приведенным выше алгоритмом.
- Число переменных в выражении n = 2.
- Общее количество логических операций в выражении — 5.
- Последовательность выполнения логических операций — 1, 5, 2, 4, 3.
- Количество столбцов — 7. Логические переменные (А и В) + логические операции \(\vee\), \(\wedge\), \(¬\), \(\vee\) , \(¬\) = 2 +5 = 7.
- Количество строк — 5, исходя из m =2n, таким образом 22 = 4, 4+1 (строка заголовков столбцов) = 5.
- Заполним таблицу.
Решение
А | В | \(А \vee В\) | ¬А | ¬В | \(¬А \vee ¬В\) | \((A \vee B) \wedge (¬A \vee ¬B)\) |
1 | 1 | 1 | ||||
1 | 1 | 1 | 1 | 1 | ||
1 | 1 | 1 | 1 | 1 | ||
1 | 1 | 1 |
После заполнения таблицы, ответ будет выглядеть следующим образом:
F = 0 при A = B = 0 и A = B = 1
Задача
Построим еще одну таблицу истинности и решим выражение \(F = X \vee Y \wedge ¬Z\)
- Число переменных в выражении n = 3.
- Общее количество логических операций в выражении — 3.
- Последовательность выполнения логических операций — 3, 2, 1.
- Количество столбцов — 6. Логические переменные (X, Y, Z) + логические операции\( \vee\), \(\wedge\), ¬ = 3 + 3 = 6.
- Количество строк — 9, исходя из m =2n, таким образом 23 = 8, 8+1 (строка заголовков столбцов) = 9.
- Заполним таблицу.
Решение
X | Y | Z | ¬Z | \(Y \wedge ¬Z\) | \(X \vee Y \wedge ¬Z\) |
q | |||||
1 | |||||
1 | 1 | 1 | 1 | ||
1 | 1 | 1 | |||
1 | 1 | 1 | |||
1 | 1 | 1 | 1 | 1 | |
1 | 1 | 1 | 1 |
После заполнения таблицы, ответ будет выглядеть следующим образом:
Синтаксис функции ЕСЛИ
Вот как выглядит синтаксис этой функции Excel и её аргументы:
Логическое выражение — (обязательное)
условие, которое возвращает значение «истина» или «ложь» («да» или «нет»);
Значение если «да» — (обязательное)
действие, которое выполняется в случае положительного ответа;
Значение если «нет» — (обязательное)
действие, которое выполняется в случае отрицательного ответа;
Давайте вместе подробнее
рассмотрим эти аргументы.
Первый аргумент функции ЕСЛИ – это логический вопрос. И ответ этот может быть только «да» или «нет», «истина» или «ложь».
Как правильно задать вопрос?
Для этого можно составить логическое выражение, используя знаки “=”, “>”,
“<”, “>=”, “<=”, “<>”. Давайте попробуем задать такой вопрос
вместе.
Использование логических функций в Excel
Табличный редактор Эксель – очень гибкий и мощный инструмент для структурированной работы с данными. Среди большого количества его эффективных инструментов стоит отдельно выделить логические операторы, в основе использования которых лежит признание выражения истинным или ложным. Эти функции эффективно встроены в инструментарий формул и позволяют создавать гибкие условия для различных вычислений или заполнения ячеек на основе логических выражений. В данной статье будут описаны основные используемые функции, а также приведен практический пример использования логических операторов в Excel.
Как поставить знак больше или равно в Эксель
В экселе можно сделать любую формулу. Главное – иметь понимание, как именно сделать запись, чтобы программа распознала внесенные данные и вывела правильное решение. Используя оператор знаков, путем расстановки простых математических элементов, решаются самые сложные задачи. Среди распространенных обозначений: +, –, =, <, >. Последние три элемента используются для проведения сравнений. Преимущественно эти формулы необходимы для упрощения анализа формул.
Сравнительные функции позволяют за считаные секунды отобрать нужные результаты. Решение вопроса становится установка формулы в ячейку. После этого программа прочитывает столбцы, тем самым отображая результат сравнения. В формуле условия есть два решения – ЛОЖЬ и ИСТИНА.
Чтобы понять, как сделать знак больше, меньше или равно в формуле эксель, следует открыть программу. Выбираем ячейку, где предположительно будет отображаться результат. Принцип прост. Через вкладку вставки – символы – выбор значения устанавливается элемент. Не забывать нажимать кнопку «вставить».
Для того чтобы разместить установленную формулу на несколько ячеек, следует путем протяжки запрограммировать ячейки. Теперь расчет будет производиться автоматически, при введении пользователем новых значений.
Равно (=) и не равно (<>)
Элемент ≠ или <> также иногда вызывает трудности у пользователей программы эксель. Рассмотрим, как в эксель поставить значок больше, меньше или равно в формуле, и когда он может потребоваться.
Применение данного знака в программе обусловлено использование опции СУММЕСЛИ. В данном случае предполагается суммирование чисел, и необходимо выполнить отбор значений, при которых, например, нет значения равного нулю. Там ≠ не является полноценной функцией. Он применяется для визуального отображения.
Как его написать? Значение – не равно нулю возможно написать в два способа:
Еще один способ. В таблице следует выбрать ячейку, куда данный символ будет проставлен. Далее зайти во вкладку вставка. Там найти вкладку символы, и посмотреть, какие доступные элементы есть. Здесь найдутся даже те обозначения, которые на обычной клавиатуре найти нереально. В экселе принцип постановки значка следующий: нажать на значок <, затем вставить, также нажать на другое значение > и вставить.
-
Выбрать ячейку в таблице.
-
Перейти в раздел вставки.
-
Раздел «символы».
-
В появившемся окне найти набор, указать математические операторы, найти ≠ и выбрать символ.
-
Нажать кнопку «вставить».
Далее следует закрыть вкладку, знак расположился в нужной ячейке.
Есть еще один способ написать знак не равно. Используется в этом случае alt-код. Он позволяет ввести абсолютно любой знак при использовании клавиатуры. Если говорить о знаке ≠, то потребуется ввести комбинацию Alt+8800. Причём использовать следует цифры, расположенные на цифровом блоке при активно включаемом NumLock.
Больше (>) и меньше (<)
Знаки больше (>) и меньше (<) используются преимущественно в комплексе с другими знаками, но могут располагаться в формуле поодиночке. Это простые условия расчета. Если необходимо выполнить всего одно решение. В этом случае программа идет по пути – если А больше (>) или меньше (<) В, то выбирается определенное решение.
Установить некоторые знаки, в том числе и больше, меньше, можно на клавиатуре. Но для тех пользователей, которые планируют работать в программе долго и продвинуто, следует использовать все возможности Эксель. Самый простой и понятный путь для новичка: вкладка вставки, затем символы, и можно выбирать необходимые элементы. После того как поиск символов будет доведен до автоматизма, можно уже применять и alt-коды. Путем использования горячих клавиш можно быстро и уверенно набирать формулы для таблиц экселя.
Больше или равно (> =) и меньше или равно (<=)
Далее рассмотрим, как указать функцию символа значения больше, меньше или равно в Excel. Двойной знак используется в программе также достаточно часто. В данном случае значение могут приобретать два смысла – ИСТИНА и ЛОЖЬ. В зависимости от того, какой именно логический результат. Лучше всего рассмотреть это на примерах:
То же мы увидим и в аналогичном примере знака меньше или равно:
Для пользователя важно получить правильный результат, а значит следует программировать правильные значения. Введение знака, как символа не представляет трудностей
А правильность решений зависит от самого пользователя программы.
Функция СУММЕСЛИ в Excel
А теперь перейдем к разновидностям функции ЕСЛИ, которые помогут выполнить заменить сразу два пункта алгоритма. Первая из них – СУММЕСЛИ, которая складывает два числа, которые соответствуют определенному условию. Например, перед нами стоит задача определить, сколько денег нужно платить в месяц всем продавцам. Для этого необходимо.
- Добавить ряд с общими доходами всех продавцов и нажать по ячейке, в которой будет находиться результат после ввода формулы.
- Находим кнопку fx, которая находится рядом со строчкой для формул. Далее появится окошко, где посредством поиска можно отыскать необходимую функцию. После выбора оператора нужно нажать кнопку «ОК». Но всегда возможен ручной ввод.
- Далее появится окно ввода аргументов функции. Все значения можно указать в соответствующих полях, а диапазон ввести через кнопку рядом с ними.
- Первый аргумент – диапазон. Сюда вводятся ячейки, которые нужно проверять на предмет соответствия критериям. Если говорить про нас – это должности работников. Вводим диапазон D4:D18. Или же просто осуществить выделение интересующих ячеек.
- В поле «Критерий» следует ввести должность. В случае с нами – «продавец». Как диапазон суммирования, указываем те ячейки, где перечислены заработные платы сотрудников (это делается как вручную, так и выделить их с помощью мыши). Нажимаем «ОК», и получаем готовую посчитанную заработную плату всех сотрудников, являющихся продавцами.
Согласитесь, что это очень удобно. Не так ли?
Инструкция else if
Инструкция используется в случае, если требуется выполнить один из многих фрагментов кода. Формально это не JavaScript-инструкция, а лишь распространенный стиль программирования, который заключается в применении повторяющихся инструкций :
Приведенный выше код – это всего лишь последовательность инструкций . Каждая следующая является частью предыдущей инструкции . Запись более удобная, чем ее синтаксически эквивалентная форма, показывающая вложенность инструкций :
В следующем примере, благодаря применению конструкции , будет выведено одно из четырех окон приветствия в зависимости от времени суток:
Выполнить код »
Скрыть результаты
Логические выражения и логические операции. Булевый тип данных
Для того, чтобы программа была не линейной (т.е. в зависимости от ситуации выполнялись разные инструкции) в языках программирования используются логические выражения, результат которых может быть либо правдой (true), либо ложью (false). Результат логических выражений обычно используют для определения пути выполнения программы.
Простые логические выражения являются результатом операций отношения между двумя операндами (значениями). В примерах ниже операндами являются значения переменных x и y. Операндами могут быть числа, символы и другие типы данных. Все что можно сравнивать между собой. Однако не рекомендуют сравнивать вещественные числа из-за особенностей их хранения в памяти компьютера.
В Паскале предусмотрены следующие операторы отношений:
- меньше: x < y
- больше: x > y
- равно: x = y
- не равно: x <> y
- меньше или равно: x <= y
- больше или равно: x >= y
Булевы типы
Результатом логического выражения всегда является булево (логическое) значение. Булев тип данных (boolean) может принимать только два значения: true (истина) или false (ложь). Эти величины упорядочены следующим образом: false < true .
Операции and, or, not (применяемые к булевским операндам) дают булевские значения.
Это значит, что данные булевого типа являются не только результатом операций отношения, но и могут выступать в роли операндов операции отношения. Также к ним можно применять функции ord, succ, pred, процедуры inc и dec.
Значение типа boolean занимает в памяти 1 байт.
В примере шести булевым переменным присваиваются значения простых логических выражений. Значения, хранимые в таких переменных, затем выводятся на экран.
Логические операции
С помощью логических операторов можно формировать сложные логические выражения. Логические операторы часто применяются по отношению к простым логическим выражениям.
В языке программирования Pascal предусмотрены следующие логические операции:
- Конъюнкция (логическое умножение, пересечение) — and. Выражение a and b дает значение true только в том случае, если a и b имеют значение true. Во всех остальных случаях значения выражения a and b дает false.
Последовательность выполнения логических операторов: not, and, or.
В языке Паскаль сначала выполняются логические операторы (and, or, xor, not), а уже потом операторы отношений (>, >=, <, <=, <>, =), поэтому не нужно забывать расставлять скобки в сложных логических выражениях.
Сложные булевы выражения могут не обрабатываться до конца, если продолжение вычислений не изменит результат. Если булево выражение в обязательном порядке нужно обрабатывать до конца, то это обеспечивается включением директивы компиляции .
if else в одну строку
Во многих языках программирования условие может быть записано в одну строку. Например, в JavaScript используется тернарный оператор:
Читается это выражение так: если больше , равен , иначе — равен .
В Python отсутствует тернарный оператор
Вместо тернарного оператора, в Питоне используют инструкцию , записанную в виде выражения (в одно строку):
Пример:
Такая конструкция может показаться сложной, поэтому для простоты восприятия, нужно поделить ее на 3 блока:
Для простоты восприятия if-else, записанного одной строкой, разделите выражение на 3 блока
Стоит ли использовать такой синтаксис? Если пример простой, то однозначно да:
Вполне читаемо смотрятся и следующие 2 примера:
Но если вы используете несколько условий, сокращенная конструкция усложняется и становится менее читаемой:
Функции ИЛИ, И
Функции И и функция ИЛИ из категории Логические способны заметно улучшить наглядность и понятность сложных логических проверок. Функция ИЛИ и функция И позволяют задавать в формуле одновременно несколько условий, т.е. дают возможность создавать сложные логические выражения. Эти функции работают в сочетании с простыми операторами сравнения. Функции И и ИЛИ могут иметь до 30 логических аргументов и имеют синтаксис:
Аргументы функций И, ИЛИ могут быть логическими выражениями, массивами или ссылками на ячейки, содержащие логические значения.
Функция ИЛИ возвращает логическое значение ИСТИНА, если хотя бы одно из логических выражений истинно, а функция И возвращает логическое значение ИСТИНА, только если все логические выражения истинны.
Предположим, что нужно вывести сообщение «Светофор», если содержимое ячейки B4 или «красный», или «зеленый», или «желтый». Если же она содержит любую другую информацию, то необходимо вывести сообщение «Это не светофор. ».
Предположим, что нужно вывести на экран содержимое ячейки B4, если она содержит число строго между 1 и 100 (1 =1; B4 =4.5.
Тогда в ячейку С15 необходимо ввести формулу: =СЧЁТЕСЛИ(B11:B13;»>=4,5″). Результат приведен на рис. 40
СУММЕСЛИ (диапазон; критерий; диапазон_суммирования)
диапазон — диапазон ячеек проверяемых на критерий (условие).
критерий — критерий (условие) в форме числа, выражения или текста, определяющего суммируемые ячейки.
диапазон_суммирования — фактические ячейки для суммирования.
Функция СУММЕСЛИ работает следующим образом: ячейки из «диапазон_суммирования» суммируются, только если соответствующие им ячейки в аргументе «диапазон» удовлетворяют условию (критерию). В тех случаях, когда диапазон вычисляемых ячеек (где проверяется условие) и диапазон фактических ячеек для суммирования совпадают, аргумент «диапазон_суммирования» можно не указывать.
В таблице на рис. 41 приведены объемы партий товара, полученные магазином. Необходимо просуммировать только объемы тех партий, значения которых превышают 20. Решение на рис. 42
Инверсия
Определение
Инверсия или логическое отрицание — это логическая операция, при выполнении которой из данного высказывания получается новое высказывание. Это высказывание является отрицанием исходного высказывания.
Если данное высказывание обозначается буквой A, то отрицание исходного высказывания обозначается следующим образом \(\). Кроме этого возможно использование условного обозначения \(\neg A\). Читаться это будет как «не А», «А ложно», «неверно, что А», «отрицание А».
Унарной в данном случае называется операция, которая используется относительно одной величины.
Основные операции
Математика, информатика, программирование и другие науки немыслимы без анализа, а также построения теорий по заданным вопросам. Здесь без мышления логического характера не обойтись. Соответствующий момент активно применяется в приложениях — не только сложных, но и элементарных.
Чтобы понять, как работает логи ческая цепочка в калькуляторах истинности, стоит запомнить ключевые операции над логическими выражениями. Всего их несколько:
- конверсия;
- дизъюнкция;
- конъюнкция;
- строгая дизъюнкция;
- импликация;
- эквивалентность.
В программировании также стоит обратить внимание на запись исключающего или. Это – операция XOR