Компьютерные книги
Главное меню
Главная Поиск по сайту Добавить материал О нас Карта книг Карта сайта
Реклама
computersbooks.net -> Добавить материал -> Языки программирования -> Ватсон К. -> "С#" -> 29

С# - Ватсон К.

Ватсон К. С# — Лори, 2005 . — 879 c.
ISBN 1-861004-98-2
Скачать (прямая ссылка): vatsonc2005.pdf
Предыдущая << 1 .. 23 24 25 26 27 28 < 29 > 30 31 32 33 34 35 .. 404 >> Следующая

48

Глава 4

В качестве примера давайте рассмотрим ситуацию, приведенную в начале этой главы, когда выполнять код нужно только прн значении переменной myval меньше 10. Для этого необходимо владеть некоторым способом, позволяющим определять, является лн утверждение ‘‘rayval меньше 10" правдой нлн ложью; т. е. необходимо получить результат логического сравнения.

Логическое сравнение требует применения логических операторов сравнения (также известных под именем операторов отношения), которые приведены в расположенной ниже таблице. В этой таблице переменная varl во всех случаях имеет тип bool, а типы переменных var2 и var3 меняются.

Оператор Тип Пример выражения Результат
Бинарный varl = var2 == var3; Переменной varl присваивается значение true в том случае, если переменная var2 раина переменной var3, и значение false в противном случае
) = Бинарный varl = var2 1= var3j Переменной varl присваивается значение true в том случае, если переменная var2 не равна переменной var3, н значение false в противном случае
< Бинарный varl ¦ var2 < varU; Переменной varl присваивается значение true в том случае, если переменная var2 меньше переменной var3, н значение false в противном случае
> Бинарный varl = var2 > var3; 1 Переменной varl присваивается значение true b том случае, если переменная var2 больше переменной var3, и значение false " в противном случае
<= Бинарный varl = var2 <= var3; Переменной varl присваивается значение true в том случае, если переменная var2 меньше нлн равна переменной var3, и значение false в противном случае
>= Бинарный varl ” var2 >= var3i Переменной varl присваивается значение true в том случае, если переменная var2 больше или равна переменной var3, и значение false в противном случае •

В программе мы можем использовать эти операторы для численных значений следующим образом:

. bool iBLeesThonlOj

isLeeeThanlO ^nyVal < 10 j

В результате выполнения этого кода переменной isLessThanio будет присвоено значение true в том случае, если значение переменной inyval меньше 10, а в противном случае — значение false.

Операторы сравнения могут использоваться также и для переменных других типов, например, для строк:

bool ieKarll; .

ieKarli ¦ jqyString " *Клг11*| .

В данном случае переменной isKarli будет присвоено значение true только при условии, что строка, содержащаяся в переменной raystring, имеет вид 'Karii*.
Управление порядком выполнения

49

Аналогичным образом можно поступать н с логическими переменными:

’ bool loTruej ' ' ' : - ierTrue ” nvBool ““ true: ... . :
Однако в этом случае допускается использование только операторов —— н ! —.
Распространенной ошибкой является безосновательное предположение, что если vail < vais есть ложь, то van > vai2 — истина. Если vail « vail, оба предыдущих выражения будут ложными. Автор специально упоминает об этой частой ошибке, поскольку сам допускал ее в прошлом.
Существуют и некоторые другие операторы, специально предназначенные для работы с логическими значениями:
Оператор Тип Пример выражения Результат
i Унарный varl “ 1 var2; Переменной varl присваивается значение true а том случае, если переменная var2 имеет значение false, и значение false, если значение var2 — true (операция “логическое не" (NOT))
k Бинарный varl = var2 & var3> Переменной varl присваивается значение true в том случае, если обе переменные var2 и var3 имеют значение true, н значение false в противном случае (операция “логическое и" (AND))
1 Бинарный varl =¦ var2 I var3; Переменной varl присваивается значение true в том случае, если хотя бы одна яз переменных — var2 илн var3 (или обе) — имеет значение true, и значение false в противном случае (операция "логическое или” (OR))
A Бинарный varl * var2 Л var3; Переменной varl присваивается значение true а том случае, если одна из переменных — var2 нлн var3, но не обе одновременно — имеет значение true, и значение false в противном случае (операция “исключающее или” (XOR))
Теперь мы можем запнсать последний пример следующим образом:
bool isTrueg ' isTrue “ mvBool & truei
Для операторов & и | существуют аналоги:
Оператор Тип Пример выражения Результат
kk Бинарный varl - var2 44 var3; Переменной varl присваивается значение true в том случае, если обе переменные var2 и var3 имеют значение true, н значение false в про-тнаном случае (операция “логическое н" (AND))
11 БннарныЙ varl - var2 1 1 var3; Переменной van присваивается значение true в том случае, если одна на переменных, var2 нлн var3 (нлн обе), имеет значение true, и значение false в противном случае (операция “логическое нлн" (OR))
50

Глава 4

Результат выполнения этих операций в точности соответствует результату выполнения операций & н |, однако существует одно важное отличие; оно заключается в способе достижения результата, позволяющем в некоторых случаях ускорить операцию. Оба эти оператора рассматривают значение своего первого операнда (в приведенной выше таблице это var2) н в определенных случаях могут вообще обходиться без обработки второго операнда (в нашем примере var3).
Предыдущая << 1 .. 23 24 25 26 27 28 < 29 > 30 31 32 33 34 35 .. 404 >> Следующая
Книги
Web-программирован-
ие
Аппаратное обеспечение Графика Руководство по П.О. Самоучитель Теория программирования Фотошоп Языки программирования
Новые книги
Вирт Н. "Систематическое программирование " (Теория программирования)

Эком "Microsoft Excel 2000 шаг за шагом Русская версия самоучитель " (Самоучитель)

Поляков А.Ю. "Методы и алгоритмы компьютерной графики в примерах Vizual C++" (Графика)

Баяковский Ю.М. "Графическая библиотека Open GL " (Графика)

Валиков А. "Технология " (Языки программирования)
Авторские права © 2013 ComputersBooks. Все права защищены.