Логические операторы. Часть 1
Часть раздела Основы путешествия по C# на Coddy — урок 21 из 69.
Логические операторы используются для объединения или изменения логических выражений. Они необходимы для создания сложных условий в вашем коде.
Например, следующее утверждение содержит два сравнения:
Является ли 5 больше 3 и меньше 6?
| Оператор | Значение | Пример |
|---|---|---|
&& | И - true, если все операнды имеют значение true | a && b |
|| | Или - true, если хотя бы один операнд имеет значение true | a || b |
! | Не - true, если операнд имеет значение false | !a |
Давайте рассмотрим несколько примеров:
5 больше 3 и 1 равно 1:
bool b1 = (5 > 3) && (1 == 1); // истинноОбъяснение: Все операнды равны true, поэтому b1 будет содержать true (операция and возвращает true, если оба операнда равны true) .
5 не равно 4 или 5 равно 2:
bool b2 = !(5 == 4) || (5 == 2); // истинноОбъяснение: Первый операнд (!(5 == 4)) равен true, поэтому b2 также равен true (операция or возвращает true, если хотя бы один из операндов равен true)
1 не равно 1 или false:
bool b3 = !(1 == 1) || false; // содержит falseОбъяснение: Все операнды равны false, поэтому b3 будет содержать false (операция or).
не (3 больше 4):
bool b4 = !(3 > 4); // равно trueОбъяснение: Операнд равен false, поэтому b4 будет содержать true (операция not).
не (5 больше 10 или 5 больше 1):
bool b5 = !(5 > 10 || 5 > 1); // содержит falseОбъяснение: 5 > 10 || 5 > 1 — это true (один из операндов равен true), поэтому в итоге b5 равно false (операция not).
Задание
НовичокВам дан код. Замените вопросительные знаки в переменных b1 и b2 так, чтобы b3 содержала true.
Существует множество правильных решений!
Шпаргалка
Логические операторы используются для объединения или изменения логических выражений:
| Оператор | Значение | Пример |
|---|---|---|
&& |
И - true, если все операнды равны true |
a && b |
|| |
Или - true, если хотя бы один операнд равен true |
a || b |
! |
Не - true, если операнд равен false |
!a |
Примеры:
bool b1 = (5 > 3) && (1 == 1); // true - оба операнда истинны
bool b2 = !(5 == 4) || (5 == 2); // true - первый операнд истинный
bool b3 = !(1 == 1) || false; // false - оба операнда ложны
bool b4 = !(3 > 4); // true - отрицает false в true
bool b5 = !(5 > 10 || 5 > 1); // false - отрицает true в falseПопробуйте сами
using System;
public class Program {
public static void Main(string[] args) {
// Введите ваш код ниже
bool b1 = ?;
bool b2 = ?;
bool b3 = b1 || b2;
// Не изменяйте строку ниже
Console.WriteLine("b3 = " + b3);
}
}В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
4Операторы. Часть 1
Арифметические операторыОператор остатка от деленияИнкремент и декрементПостфиксный инкремент и декрементСокращенные арифметические операции7Основы ввода-вывода
Базовый выводИнтерполяция строкЧтение вводаПарсингПовторение — до 120Повторение — True или False5Операторы. Часть 2
Операторы сравненияЛогические операторы. Часть 1Логические операторы. Часть 2Повторение: простая логикаЛогические операторы. Часть 38Приложение-калькулятор
Приветственное сообщениеПолучение чисел3Переменные. Часть 2
VarКонстантыСоглашения об именованииПовторение: инициализация переменныхПриведение типов6Принятие решений
Оператор ifКонструкция if - elseОператор switchТернарный операторПовторение: if - elseВложенный if - else