Логические операторы И, ИЛИ, НЕ
Технология абзацных отступов.
В качестве операторов внутри 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 могут быть сложными. Несколько условных выражений можно соединить логическими операторами && (И), | | (ИЛИ), ! (НЕ). Два простых условных выражения, соединенные по && (“И”), в качестве результата дадут “истину”, только в том случае, если каждое из них правдиво.Два простых условных выражения, соединенные по | | (“ИЛИ”), в качестве результата дадут “истину,если хотя бы одно из них правдиво.