VirQ. Понятие оператора & (И) в C#
Язык C# входит в ТОП-5
самых популярных языков
программирования
Главная / Булевы переменные /
Понятие оператора & (И)
Статей на сайте: 61

Понятие оператора & (И)


В жизни мы тоже сталкиваемся с оператором "И" постоянно. Например:

- если книга открыта и свет включён, я могу прочитать книгу
- если в магазине есть сыр и у меня есть деньги, я его куплю

Простые банальные фразы, но мозг, поверьте, именно так и мыслит.
Скажем, вы же понимаете, что если есть сыр в магазине, но денег нет, то сыр вам не дадут?

Это можно запись в виде таблицы:

Магазин Я Результат
Есть сыр Есть деньги Покупаю
Есть сыр Нет денег Не могу купить
Нет сыра Есть деньги Не могу купить
Нет сыра Нет денег Не могу купить

В программировании получается так же. В качестве примера возьмём другой пример. Если вам человек назвал число 56, вы же ответите, что оно двухзначное? Каким образом? Потому что там 2 цифры.
А ещё, потому что 56 находится между наименьшим двухзначным числом 10 и наибольшим двухзначным 99.
В коде это будет выглядеть так:
[code] //Вариант 1 int n = 56; bool r = n >= 10 & n <= 99; [/code]
В данном случае в переменную типа bool сохранили результат, входит ли в диапазон это число
Используя тернарную операцию, можем вывести результат:
[code] int n = 56; bool r = n >= 10 & n <= 99; string s = r ? "Двухзначное" : "Не двухзначное"; [/code]
Можно применить и такой метод, хотя к данной теме он не относится:
[code] int n = 56; string t = n.ToString(); string s = t.Length == 2 ? "Двухзначное" : "Не двухзначное"; [/code]
В данном примере с помощью ToString мы получаем строковое представление числа, а в 3-ей строке по условию выводим, если длина равна 2, значит вывести слово "Двухзначное". Любая другая длина 1 или >=3 - это НЕ двухзначное число.
Чтобы определить, сколько цифр в числе, смотрите тут

Подробнее о символе "&" в булевых выражениях
Подробнее о символе "&" над числами

Дополнительная информация о том, как вывести результат в консоли или WinForm