Операторы отношения и равенства C
Twitter LinkedIn Facebook Адрес электронной почты
- Статья
Операторы отношения и равенства сравнивают свои первые и вторые операнды для проверки истинности указанного отношения. Результатом реляционного выражения является 1, если проверенная связь имеет значение true, и 0, если значение false. Результат имеет тип int
.
Синтаксис
relational-expression
:
shift-expression
relational-expression
<
shift-expression
relational-expression
>
shift-expression
relational-expression
<=
shift-expression
relational-expression
>=
shift-expression
equality-expression
:
relational-expression
equality-expression
==
relational-expression
equality-expression
!=
relational-expression
Операторы отношения и равенства проверяют следующие отношения.
Оператор | Проверяемое отношение |
---|---|
< | Первый операнд меньше второго операнда |
> | Первый операнд больше второго операнда |
<= | Первый операнд меньше или равен второму операнду |
>= | Первый операнд больше или равен второму операнду |
== | Первый операнд равен второму операнду |
!= | Первый операнд не равен второму операнду |
Первые четыре оператора в списке имеют более высокий приоритет, чем операторы равенства (==
и !=
). Сведения о приоритетах приведены в таблице Приоритет и ассоциативность операторов C.
Операнды могут быть целыми числами, числами с плавающей запятой или указателями. Типы операндов могут быть разными. Операторы отношения выполняют обычные арифметические преобразования с операндами целого типа и типа с плавающей запятой. Кроме того, с операторами отношения и равенства можно использовать следующие сочетания типов операндов:
Оба операнда любого оператора отношения или равенства могут быть указателями на один и тот же тип. Для операторов равенства (
==
) и неравенства (!=
) результат сравнения показывает, указывают ли оба указателя на один и тот же адрес в памяти. Для других реляционных операторов (<
,>
,<=
и>=
) результат сравнения указывает относительное положение двух адресов памяти объектов, на которые указывает . Операторы отношения сравнивают только смещения.Сравнение указателей определено только для частей одного и того же объекта. Если указатели относятся к элементам массива, сравнение аналогично сравнению соответствующих индексов. Адрес первого элемента массива «меньше» адреса последнего элемента. Для структур указатели на элементы структуры, объявленные позже, являются указателями «больше» на элементы, объявленные ранее в структуре. Указатели на члены одного объединения эквивалентны.
Значение указателя можно сравнивать с постоянным значением 0 на равенство (
==
) или неравенство (!=
). Указатель со значением 0 называется указателем null; то есть он не указывает на допустимое расположение в памяти.Операторы равенства следуют тем же правилам, что и реляционные операторы, но имеют больше возможностей: указатель можно сравнить с константным целочисленным выражением со значением 0 или с указателем на
void
. Два указателя «null» при сравнении считаются равными. Операторы равенства сравнивают как сегмент, так и смещение.
Примеры
В этих примерах показаны реляционные операторы и операторы равенства.
int x = 0, y = 0; if ( x < y )
Поскольку x
и y
равны, выражение в этом примере возвращает значение 0.
char array[10]; char *p; for ( p = array; p < &array[10]; p++ ) *p = '\0';
Фрагмент в этом примере задает для каждого элемента массива array
постоянное символьное значение null.
enum color { red, white, green } col; . . . if ( col == red ) . . .
Эти операторы объявляют переменную перечисления с именем col
и тегом color
. В любой момент переменная может содержать целочисленное значение 0, 1 или 2, представляющее один из элементов набора color
перечисления: цвет red
, white
или green
соответственно. Если переменная col
содержит значение 0 при выполнении оператора if
, будут выполнены все операторы, зависящие от этого оператора if
.
См. также
Реляционные операторы: <
, >
, <=
и >=
Операторы равенства: ==
и !=
Операторы сравнения. — it-black.ru
Операторы сравнения. — it-black.ru Перейти к содержимомуОператоры сравнения, как это видно из их названия, позволяют сравнивать между собой два значения. В большинстве языков программирования для операторов сравнения существует сокращенный синтаксис:
Условие | Символ | Пример |
Меньше чем | (a | |
Больше чем | > | (a > 7) |
Меньше или равно | (a | |
Больше или равно | >= | (a >= b) |
Равно | == | (a == b) |
Не равно | != | (a != b) |
Всё содержимое таблицы вам должно быть известно из школьного курса, внимание следует обратить разве что на сокращённое обозначение эквивалентности в виде знака равенства. Двойной знак равенства используется для сравнения, в то время как одинарный играет роль оператора присваивания.
Например, запись a = 10 означает «Поместите в переменную a значение 10», а запись a == 10 читается как «Проверьте, равна ли переменная a числу 10». Некоторые языки, например Pascal, используют для сравнения оператор :=, чтобы не создавать визуальную путаницу.
Также следует помнить, что восклицательный знак (!) обычно означает отрицание. Он меняет значение любого выражения на противоположное:
!(a = b)
Операторы сравнения соединяются в цепочки с помощью логических операторов ИЛИ и И.
Логическая операция | Символ | Пример |
ИЛИ | || | ((a |
И | && | ((a |
В первом примере два условных выражения, соединённые оператором ИЛИ, будут иметь значение true (истина), если a меньше b ИЛИ если a меньше c. Во втором примере два условных выражения соединяются оператором И.
Поэтому результат будет иметь значение true, если a меньше, чем b И a не меньше, чем c. Выражения такого типа группируются с помощью скобок и состоят подчас из множества элементов.
- Виктор Черемных
- 22 июля, 2018
- No Comments
Группа в VK
Обнаружили опечатку?
Сообщите нам об этом, выделите текст с ошибкой и нажмите Ctrl+Enter, будем очень признательны!
Свежие статьи
Облако меток
Похожие статьи
Решение проблемы в оффлайн браузере Zeal — Content rendering error
В этом видео мы решаем проблему загрузки контента в оффлайн браузере Zeal.
Установка и обзор оффлайн браузера документации по программированию
В этом видео вы научитесь устанавливать оффлайн браузер Zeal для работы с документацией по программированию.
Зачем программисту изучать алгоритмы?
За всю историю компьютерных наук сложилось понимание, какие алгоритмы и структуры данных (способы их хранения) нужны для решения практических задач — так называемый джентльменский набор,
Что такое API?
API — это аббревиатура от английского Application Programming Interface, интерфейс программирования приложения. Говоря по-простому, API действует как виртуальный посредник и передает информацию из одного интерфейса,
Instagram Vk Youtube Telegram OdnoklassnikiПолезно знать
Рубрики
Авторы
равно, не равно, больше, меньше
Многие задачи, выполняемые в Excel, включают сравнение данных в разных ячейках. Для этого в Microsoft Excel предусмотрено шесть логических операторов, которые также называются операторами сравнения. Этот учебник призван помочь вам понять суть логических операторов Excel и написать наиболее эффективные формулы для анализа данных.
Логические операторы Excel — обзор
В Excel используется логический оператор для сравнения двух значений. Логические операторы иногда называют булевыми операторами, потому что результат сравнения в любом конкретном случае может быть либо ИСТИНА, либо ЛОЖЬ.
В Excel доступно шесть логических операторов. В следующей таблице объясняется, что делает каждый из них, и иллюстрируется теория примерами формул.
Состояние | Оператор | Пример формулы | Описание |
Равен | = | =А1=В1 | Формула возвращает значение ИСТИНА, если значение в ячейке A1 равно значению в ячейке B1; ЛОЖЬ в противном случае. |
Не равно | <> | =А1<>В1 | Формула возвращает значение ИСТИНА, если значение в ячейке A1 не равно значению в ячейке B1; ЛОЖЬ в противном случае. |
Больше | > | =А1>В1 | Формула возвращает значение ИСТИНА, если значение в ячейке A1 больше, чем значение в ячейке B1; в противном случае возвращается ЛОЖЬ. |
Менее | < | =А1<В1 | Формула возвращает значение ИСТИНА, если значение в ячейке A1 меньше, чем в ячейке B1; ЛОЖЬ в противном случае. |
Больше или равно | >= | =А1>=В1 | Формула возвращает значение ИСТИНА, если значение в ячейке A1 больше или равно значениям в ячейке B1; ЛОЖЬ в противном случае. |
Меньше или равно | <= | =А1<=В1 | Формула возвращает значение ИСТИНА, если значение в ячейке A1 меньше или равно значениям в ячейке B1; ЛОЖЬ в противном случае. |
На приведенном ниже снимке экрана показаны результаты, возвращенные Равно , Не равно , Больше и Меньше Логические операторы:
Может показаться, что в приведенной выше таблице все и говорить не о чем. Но на самом деле у каждого логического оператора есть свои особенности, и знание их может помочь вам использовать настоящую мощь формул Excel.
Использование логического оператора «Равно» в Excel
Логический оператор «Равно » (=) может использоваться для сравнения всех типов данных — чисел, дат, текстовых значений, логических значений, а также результатов, возвращаемых другими формулами Excel. Например:
=А1=В1 | Возвращает ИСТИНА, если значения в ячейках A1 и B1 совпадают, в противном случае — ЛОЖЬ. |
=A1=»апельсины» | Возвращает ИСТИНА, если ячейки A1 содержат слово «апельсины», в противном случае — ЛОЖЬ. |
=A1=ИСТИНА | Возвращает ИСТИНА, если ячейки A1 содержат логическое значение ИСТИНА, в противном случае возвращает ЛОЖЬ. |
=А1=(В1/2) | Возвращает ИСТИНА, если число в ячейке A1 равно частному от деления B1 на 2, в противном случае — ЛОЖЬ. |
Пример 1. Использование оператора «Равно» с датами
Вы можете быть удивлены, узнав, что логический оператор Equal to не может сравнивать даты так же легко, как числа. Например, если ячейки A1 и A2 содержат дату «1.12.2014», формула =A1=A2
вернет ИСТИНА, как и должно быть.
Однако, если вы попробуете либо =A1=12/1/2014
, либо =A1="12/1/2014"
, в результате вы получите ЛОЖЬ. Немного неожиданно, а?
Дело в том, что Excel хранит даты как числа, начинающиеся с 1 января 1900 года, которые хранятся как 1. Дата 1/12/2014 хранится как 41974. В приведенных выше формулах Microsoft Excel интерпретирует «1/12/2014». » как обычную текстовую строку, а так как «12/1/2014» не равно 41974, возвращается ЛОЖЬ.
Чтобы получить правильный результат, вы всегда должны заключать дату в функцию ДАТАЗНАЧ, например: =A1=ДАТАЗНАЧ("1/12/2014")
Примечание. Функцию DATEVALUE также необходимо использовать с другим логическим оператором, как показано в следующих примерах.
Тот же подход следует применять при использовании оператора равенства Excel в логической проверке функции ЕСЛИ. Вы можете найти больше информации, а также несколько примеров формул в этом руководстве: Использование функции Excel IF с датами.
Пример 2. Использование оператора «Равно» с текстовыми значениями
Использование оператора Excel Equal to с текстовыми значениями не требует никаких дополнительных действий. Единственное, что вы должны иметь в виду, это то, что логический оператор равно в Excel равен 9.0166 без учета регистра , что означает, что различия в регистре игнорируются при сравнении текстовых значений.
Например, если ячейка A1 содержит слово « апельсинов », а ячейка B1 содержит « апельсинов », формула =A1=B1
вернет значение TRUE.
Если вы хотите сравнить текстовые значения с учетом их различий в регистре, вы должны использовать функцию EXACT вместо оператора Равно . Синтаксис функции EXACT так же прост, как:
ТОЧНО(текст1, текст2)
Где текст 1 и текст 2 — это значения, которые вы хотите сравнить. Если значения совпадают, включая регистр, Excel возвращает TRUE; в противном случае возвращается ЛОЖЬ. Вы также можете использовать функцию EXACT в формулах ЕСЛИ, когда вам нужно сравнение текстовых значений с учетом регистра, как показано на снимке экрана ниже:
Примечание. Если вы хотите сравнить длину двух текстовых значений, вы можете вместо этого использовать функцию ДЛСТР, например =ДЛСТР(A2)=ДЛСТР(B2)
или =ДЛСТР(A2)>=ДЛСТР(B2)
.
Пример 3. Сравнение логических значений и чисел
Существует распространенное мнение, что в Microsoft Excel логическое значение TRUE всегда равно 1, а FALSE — 0. Однако это верно лишь отчасти, и ключевое слово здесь «всегда» или, точнее, «не всегда» 🙂
При написании логического выражения «равно» для сравнения логического значения и числа необходимо специально указать для Excel, что нечисловое логическое значение должно рассматриваться как число. Вы можете сделать это, добавив двойной знак минус перед логическим значением или ссылкой на ячейку, например. г. =A2=--ИСТИНА
или =A2=--B2
.
Знак минус 1 st , который технически называется унарным оператором, приводит ИСТИНА/ЛОЖЬ к -1/0 соответственно, а второй унарный инвертирует значения, превращая их в +1 и 0. понять глядя на следующий скриншот:
Примечание. Вы должны добавить двойной унарный оператор перед логическим значением при использовании других логических операторов, таких как не равно , больше или меньше для корректного сравнения числовых и логических значений.
При использовании логических операторов в сложных формулах вам также может понадобиться добавить двойное унарное выражение перед каждым логическим выражением, которое возвращает ИСТИНА или ЛОЖЬ в качестве результата. Вот пример такой формулы: СУММПРОИЗВ и СУММЕСЛИМН в Excel.
Использование логического оператора «Не равно» в Excel
Вы используете оператор Excel Не равно (<>), когда хотите убедиться, что значение ячейки не равно указанному значению. Использование 9Оператор 0087 Not equal to очень похож на использование оператора Equal to , который мы только что обсуждали.
Результаты, возвращаемые оператором Не равно , аналогичны результатам, полученным функцией НЕ Excel, которая меняет значение своего аргумента на противоположное. В следующей таблице приведены несколько примеров формул.
Не равно оператору | функция НЕ | Описание |
=А1<>В1 | = НЕ(А1=В1) | Возвращает TRUE, если значения в ячейках A1 и B1 не совпадают, иначе FALSE. |
=A1<>«апельсины» | = НЕ(A1=»апельсины») | Возвращает ИСТИНА, если ячейка A1 содержит любое значение, кроме «апельсинов», и ЛОЖЬ, если она содержит «апельсины», или «АПЕЛЬСИНЫ», или «апельсины» и т. д. |
=A1<>ИСТИНА | = НЕ (A1 = ИСТИНА) | Возвращает ИСТИНА, если ячейка A1 содержит любое значение, кроме ИСТИНА, в противном случае — ЛОЖЬ. |
=А1<>(В1/2) | = НЕ(А1=В1/2) | Возвращает ИСТИНА, если число в ячейке A1 не равно частному от деления B1 на 2, в противном случае — ЛОЖЬ. |
=A1<>ДАТАЗНАЧ(«1/12/2014») | = НЕ(A1=ДАТАЗНАЧ(«1/12/2014»)) | Возвращает ИСТИНА, если A1 содержит какое-либо значение, кроме даты 1 декабря 2014 года, независимо от формата даты, в противном случае — ЛОЖЬ. |
Больше, меньше, больше или равно, меньше или равно
Вы используете эти логические операторы в Excel, чтобы проверить, как одно число сравнивается с другим. Microsoft Excel предоставляет 4 операции сравнения, имена которых говорят сами за себя:
- Больше (>)
- Больше или равно (>=)
- Меньше чем (<)
- Меньше или равно (<=)
Чаще всего операторы сравнения Excel используются с числами, значениями даты и времени. Например:
=А1>20 | Возвращает ИСТИНА, если число в ячейке A1 больше 20, в противном случае — ЛОЖЬ. |
=А1>=(В1/2) | Возвращает ИСТИНА, если число в ячейке A1 больше или равно частному от деления B1 на 2, в противном случае — ЛОЖЬ. |
=A1<ДАТАЗНАЧ("1/12/2014") | Возвращает ИСТИНА, если дата в ячейке A1 меньше 1 декабря 2014 г., в противном случае — ЛОЖЬ. |
=A1<=СУММ(B1:D1) | Возвращает ИСТИНА, если число в ячейке A1 меньше или равно сумме значений в ячейках B1:D1, в противном случае — ЛОЖЬ. |
Использование операторов сравнения Excel с текстовыми значениями
Теоретически вы также можете использовать операторы больше , больше или равно , а также их аналоги меньше с текстовыми значениями. Например, если ячейка A1 содержит « яблок », а ячейка B1 содержит « бананов », угадайте, что вернет формула =A1>B1
? Поздравляю тех, кто поставил на ЛОЖЬ 🙂
При сравнении текстовых значений Microsoft Excel игнорирует их регистр и сравнивает значения посимвольно, при этом «a» считается наименьшим текстовым значением, а «z» — наибольшим текстовым значением.
Итак, при сравнении значений « яблок » (A1) и « бананов » (B1) Excel начинает с их первых букв «a» и «b» соответственно, а так как «b» больше, чем «a», формула =A1>B1
возвращает ЛОЖЬ.
Если первые буквы совпадают, то сравниваются 2 и буквы, если они тоже совпадают, то Excel получает 3 rd , 4 th буквы и так далее. Например, если A1 содержит » яблок «, а B1 содержит « агавы «, формула =A1>B1
вернет ИСТИНА, поскольку «p» больше, чем «g».
На первый взгляд кажется, что использование операторов сравнения с текстовыми значениями имеет очень мало практического смысла, но никогда не знаешь, что тебе может понадобиться в будущем, так что, возможно, эти знания кому-то пригодятся.
Обычное использование логических операторов в Excel
В реальной работе логические операторы Excel редко используются сами по себе. Согласитесь, булевы значения TRUE и FALSE, которые они возвращают, хоть и очень истинны (извините за каламбур), но не очень значимы. Чтобы получить более разумные результаты, вы можете использовать логические операторы как часть функций Excel или правил условного форматирования, как показано в приведенных ниже примерах.
1. Использование логических операторов в аргументах функций Excel
Что касается логических операторов, Excel очень либерален и позволяет использовать их в параметрах многих функций. Одно из наиболее распространенных применений находится в функции ЕСЛИ в Excel, где операторы сравнения могут помочь построить логический тест, а формула ЕСЛИ вернет соответствующий результат в зависимости от того, оценивается ли тест как ИСТИНА или ЛОЖЬ. Например:
=ЕСЛИ(A1>=B1, "ОК", "НЕ ОК")
Эта простая формула ЕСЛИ возвращает OK, если значение в ячейке A1 больше или равно значению в ячейке B1, в противном случае — «Не OK».
А вот еще пример:
=ЕСЛИ(A1<>B1, СУММ(A1:C1), "")
Формула сравнивает значения в ячейках A1 и B1, и если A1 не равно B1, возвращается сумма значений в ячейках A1:C1, в противном случае — пустая строка.
Логические операторы Excel также широко используются в специальных функциях ЕСЛИ, таких как СУММЕСЛИ, СЧЁТЕСЛИ, СРЗНАЧЕСЛИ и их эквивалентах во множественном числе, которые возвращают результат на основе определенного условия или нескольких условий.
Вы можете найти множество примеров формул в следующих учебниках:
- Использование функции ЕСЛИ в Excel
- Как использовать СУММЕСЛИ в Excel
- Excel СУММЕСЛИМН и СУММЕСЛИ с несколькими критериями
- Использование СЧЁТЕСЛИ в Excel
- Excel СЧЁТЕСЛИМН и СЧЁТЕСЛИ с несколькими критериями
2. Использование логических операторов Excel в математических вычислениях
Конечно, функции Excel очень мощные, но не всегда их нужно использовать для достижения желаемого результата. Например, результаты, возвращаемые следующими двумя формулами, идентичны:
Функция ЕСЛИ: = ЕСЛИ(B2>C2, B2*10, B2*5)
Формула с логическими операторами: =(B2>C2)*(B2*10)+(B2<=C2)*(B2*5)
Думаю, формулу ЕСЛИ интерпретировать легче, верно? Он указывает Excel умножить значение в ячейке B2 на 10, если B2 больше, чем C2, в противном случае значение в ячейке B1 умножается на 5.
Теперь давайте проанализируем, что представляет собой формула 2 nd , где больше и меньше или равно логических операторов. Полезно знать, что в математических вычислениях Excel приравнивает логическое значение ИСТИНА к 1, а ЛОЖЬ к 0. Имея это в виду, давайте посмотрим, что на самом деле возвращает каждое из логических выражений.
Если значение в ячейке B2 больше, чем значение в C2, то выражение B2>C2 равно ИСТИННО и, следовательно, равно 1. С другой стороны, B2<=C2 равно FALSE и равно 0. Таким образом, учитывая, что B2>C2, наша формула претерпевает следующее преобразование:
Поскольку любое число, умноженное на ноль, дает ноль, мы можем отбросить вторую часть формулы после знака плюс. И поскольку любое число, умноженное на 1, является этим числом, наша сложная формула превращается в простую =B2*10, которая возвращает произведение умножения B2 на 10, что и делает приведенная выше формула ЕСЛИ:)
Очевидно, что если значение в ячейке B2 меньше, чем в C2, то выражение B2>C2 оценивается как FALSE (0), а B2<=C2 как TRUE (1), что означает, что произойдет обратное описанному выше.
3. Логические операторы в условном форматировании Excel
Еще одно распространенное использование логических операторов встречается в условном форматировании Excel, которое позволяет быстро выделить наиболее важную информацию в электронной таблице.
Например, следующие простые правила выделяют выбранные ячейки или целые строки на вашем листе в зависимости от значения в столбце A:
Меньше чем (оранжевый): =A1<5
Больше (зеленый): =A1>20
Подробные пошаговые инструкции и примеры правил можно найти в следующих статьях:
- Формулы условного форматирования Excel
- Как изменить цвет строки на основе значения ячейки
- Два способа изменить цвет фона на основе значения ячейки
- Как выделить каждую вторую строку в Excel
Как видите, использование логических операторов в Excel интуитивно понятно и просто. В следующей статье мы изучим азы логических функций Excel, которые позволяют выполнять более одного сравнения в формуле. Пожалуйста, оставайтесь с нами и спасибо за чтение!
Вас также может заинтересовать
не равно оператору | Формула Excel
Главная > Формулы Excel > Как использовать оператор «НЕ РАВНО» в Excel 0002 Подробнее Формулы
В Excel, если вы хотите проверить, не равно ли значение ячейки другому значению, вы можете использовать оператор не равно «<>». Он возвращает TRUE, если значение совпадает, или FALSE, если не совпадает. Вы можете использовать его как формулу или с другими функциями, такими как ЕСЛИ, ИЛИ и И.
В следующем примере у вас есть два значения в ячейках A1 и A2, и вам нужно проверить, не равно ли значение 1 значению 2.
Использование оператора НЕ РАВНО
- Сначала в ячейку B1 введите равенство оператор.
- После этого обратитесь к ячейке A1, где у вас есть первое значение.
- Затем введите оператор не равно «<>».
- Теперь обратимся ко второму значению в ячейке A2.
- В конце нажмите Enter, чтобы получить значение.
В тот момент, когда вы нажимаете Enter, в результате возвращается TRUE. Это потому, что оба значения не равны. Теперь, если вы введете «Excel» в ячейку B1, результат, который мы имеем в ячейке A1, изменится на FALSE. Причина в том, что у нас одинаковые значения в обеих ячейках.
Использование НЕ РАВНО с ИЛИ – И
Как я уже сказал, вы можете использовать оператор не равно и с другими функциями. Попробуем использовать его с функциями И и ИЛИ.
С помощью функции ИЛИ вы можете проверить два условия, и она вернет ИСТИНА, если какое-либо из условий или оба условия совпадают. В следующем примере у нас есть два условия для проверки. Сравнение значений из ячеек A1 и A2, а затем из B1 и B2.
Теперь, когда мы используем оператор не равно в обоих условиях, а в первом условии оба значения не равны, он возвращает ИСТИНА. Но после этого во втором условии оба значения одинаковы, поэтому условие ЛОЖНО.
Но в результате мы получили ИСТИНА, потому что, как мы обсуждали, ИЛИ возвращает ИСТИНА, если только одно условие ИСТИНА.