109 lines
3.0 KiB
C#
109 lines
3.0 KiB
C#
using System;
|
||
|
||
/* Логические операторы
|
||
*
|
||
* && Сокращённое И
|
||
* || Сокращённое ИЛИ
|
||
* & И
|
||
* | ИЛИ
|
||
* ! НЕ(унарный)
|
||
*/
|
||
class Program
|
||
{
|
||
static void Main()
|
||
{
|
||
bool isInfected = true;
|
||
|
||
if (isInfected)
|
||
{
|
||
Console.WriteLine("[bool] Персонаж инфицирован!");
|
||
}
|
||
else
|
||
{
|
||
Console.WriteLine("[bool] Персонаж здоров!");
|
||
}
|
||
|
||
// Оператор "!"
|
||
isInfected = false;
|
||
if (!isInfected)
|
||
{
|
||
Console.WriteLine("[!] Персонаж здоров!");
|
||
}
|
||
else
|
||
{
|
||
Console.WriteLine("[!] Персонаж инфицирован!");
|
||
}
|
||
|
||
// Не проверяет условия если одно уже равно необходимому значению
|
||
// Оператор "&&"
|
||
bool isHighTemperature = true;
|
||
|
||
bool hasNoColing = true;
|
||
|
||
if (isHighTemperature && hasNoColing)
|
||
{
|
||
Console.WriteLine("[&&] Угроза повреждения процессора!!!");
|
||
}
|
||
|
||
// Оператор "||"
|
||
isHighTemperature = false;
|
||
|
||
hasNoColing = true;
|
||
|
||
if (isHighTemperature || hasNoColing)
|
||
{
|
||
Console.WriteLine("[||] Угроза повреждения процессора!!!");
|
||
}
|
||
|
||
// Проверяет всегда оба выражения в условии
|
||
// Оператор "&"
|
||
isHighTemperature = true;
|
||
|
||
hasNoColing = true;
|
||
|
||
if (isHighTemperature & hasNoColing)
|
||
{
|
||
Console.WriteLine("[&] Угроза повреждения процессора!!!");
|
||
}
|
||
|
||
// Оператор "|"
|
||
isHighTemperature = false;
|
||
|
||
hasNoColing = true;
|
||
|
||
if (isHighTemperature | hasNoColing)
|
||
{
|
||
Console.WriteLine("[|] Угроза повреждения процессора!!!");
|
||
}
|
||
|
||
// Разница работы операторов в отладчике
|
||
// GetCoolingStatus = true, GetTemperatue = true
|
||
if (GetTemperatue() | GetCoolingStatus())
|
||
{
|
||
Console.WriteLine("[|] Угроза повреждения процессора!!!");
|
||
}
|
||
if (GetTemperatue() || GetCoolingStatus())
|
||
{
|
||
Console.WriteLine("[|] Угроза повреждения процессора!!!");
|
||
}
|
||
if (GetTemperatue() & GetCoolingStatus())
|
||
{
|
||
Console.WriteLine("[&] Угроза повреждения процессора!!!");
|
||
}
|
||
if (GetTemperatue() && GetCoolingStatus())
|
||
{
|
||
Console.WriteLine("[&&] Угроза повреждения процессора!!!");
|
||
}
|
||
Console.ReadKey();
|
||
}
|
||
|
||
private static bool GetCoolingStatus()
|
||
{
|
||
return true;
|
||
}
|
||
|
||
private static bool GetTemperatue()
|
||
{
|
||
return true;
|
||
}
|
||
} |