Исключающее ИЛИ (логическое сложение, строгая дизъюнкция) – булева функция и логическая операция. Результат выполнения операции является истинным только при условии, если является истинным в точности один из аргументов.
В C# для использования операции исключающее ИЛИ нужно написать ^
и применить её к двум операндам имеющим тип bool
(это также могут быть результат работы операций сравнения).
Таблица истинности для операции «исключающее ИЛИ» двух логических выражений:
Как видно их таблицы истинности, для операции исключающее ИЛИ работает переместительный закон (результат операции не изменится, неважно в какой последовательности идут операнды).
Пример использования операции конъюнкции:
Задача: пользователь вводит два число, если первое входит в диапазон (-∞; 0],
то второе не должно входить в диапазон [100; +∞)
, и наоборот. Вывести сообщение об ошибке, если они оба входят в указанные для них диапазоны.
Решение:
static void Main()
{
Console.WriteLine("Введите первое целое число:");
int number1 = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Введите второе целое число:");
int number2 = Convert.ToInt32(Console.ReadLine());
if (number1 <= 0 ^ 100 <= number2)
{
Console.WriteLine("одно из чисел принадлежит указанным диапазонам");
}
else if (number1 <= 0 && 100 <= number2)
{
Console.WriteLine("оба числа принадлежат указанным диапазонам");
}
else
{
Console.WriteLine("оба числа не принадлежат указанным диапазонам");
}
Console.ReadKey();
}
Источник: видеоурок Александра Шевчука "ВИДЕОУРОК №5. ЛОГИЧЕСКИЕ ОПЕРАЦИИ".