Логические операторы И, ИЛИ, НЕ

Технология абзацных отступов.

 

В качестве операторов внутри if – else могут быть простые операторы и блоки. Внутри блоков можно использовать любые операторы, в том числе и сами операторы if – else и различные виды циклов. Для удобства записи операторов if – elseприменяется технология абзацных отступов. Фигурные скобки блоков часто необходимы для правильной логической работы оператора if – else.

 

// Пример 4.2.8

// Почему нужно использовать скобки в операторе if

#include <iostream>

using namespace std;

int main() {

setlocale( LC_ALL, "Russian"); // для вывода на экран русского текста

int x;

cout << "Введите число меньшее 10 или большее 100: ";

cin >> x;

cout << "\n";

if (x > 10)

if (x > 100)

cout << "Больше 100, Спасибо!\n";

else // относится не к тому if (else относится к ближнему if )

cout << "Меньше 10, Спасибо!\n";

cin.get();cin.get();

return 0;

}

 

 

// Пример 4.2.9

// Правильное использование скобок в операторе if

#include <iostream>

using namespace std;

int main() {

setlocale( LC_ALL, "Russian"); // для вывода на экран русского текста

int x;

cout << "Введите число меньшее 10 или большее 100: ";

cin >> x;

if (x > 10) {

if (x > 100)

cout << "Больше 100, Спасибо!\n";

else

cout << "Ошибка!!!\n";

}

else

cout << "Меньше 10, Спасибо!\n";

cin.get();

return 0;

}

 

 

Логические выражение в операторе if могут быть сложными. Несколько условных выражений можно соединить логическими операторами && (И), | | (ИЛИ), ! (НЕ). Два простых условных выражения, соединенные по && (“И”), в качестве результата дадут “истину”, только в том случае, если каждое из них правдиво.Два простых условных выражения, соединенные по | | (“ИЛИ”), в качестве результата дадут “истину,если хотя бы одно из них правдиво.