В этой программе для проверки того, совпадает ли с
Попробуем усовершенствовать нашу программу и в ее новую версию включим
// Программа "Угадай магическое число":
// 1-е усовершенствование.
#include
#include
using namespace std;
int main()
{
int magic; // магическое число
int guess; // вариант пользователя
magic = rand(); // Получаем случайное число.
cout << "Введите свой вариант магического числа: ";
cin >> guess;
if(guess == magic) cout << "** Правильно **";
else cout << "...Очень жаль, но вы ошиблись.";
return 0;
}
Иногда новичков в C++ сбивает с толку тот факт, что для управления if-инструкцией можно использовать любое действительное С++-выражение. Другими словами, тип выражения необязательно ограничивать операторами отношений и логическими операторами или операндами типа bool. Главное, чтобы результат вычисления условного выражения можно было интерпретировать как значение ИСТИНА или ЛОЖЬ. Как вы помните из предыдущей главы, нуль автоматически преобразуется в false, а все ненулевые значения— в true. Это означает, что любое выражение, которое дает в результате нулевое или ненулевое значение, можно использовать для управления if-инструкцией. Например, следующая программа считывает с клавиатуры два целых числа и отображает частное от деления первого на второе. Чтобы не допустить деления на нуль, в программе используется if-инструкция.
// Деление первого числа на второе.
#include
using namespace std;
int main()
{
int a, b;
cout << "Введите два числа: ";
cin >> a >> b;
if(b) cout << a/b << '\n';
else cout << "На нуль делить нельзя.\n";
return 0;
}
Обратите внимание на то, что значение переменной
if(b != 0) cout << а/b << '\n';
Эта форма if-инструкции считается устаревшей и потенциально неэффективной.
if(i) {
if(j) statement1;
if(k) statement2; // Эта if-инструкция
else statement3; // связана с этой else-инструкцией.
}
else statement4; // Эта else-инструкция связана с if(i).
Как утверждается в комментариях, последняя
Вложенная if-инструкция—
Язык C++ позволяет 256 уровней вложения, но на практике редко приходится вкладывать if-инструкции на "такую глубину". продемонстрируем использование вложенных инструкций с помощью очередного усовершенствования программы
// Программа "Угадай магическое число":