• Я зарабатываю 100 000 RUB / месяц на этом сайте!

    А знаешь как? Я всего-лишь публикую (создаю темы), а админ мне платит. Трачу деньги на мороженое, робуксы и сервера в Minecraft. А ещё на паль из Китая. 

    Хочешь так же? Пиши и узнавай условия: https://t.me/alex_redact
    Реклама: https://t.me/yougame_official

Конструкция ветвления в C++ — урок 3

  • Автор темы Автор темы Razzy
  • Дата начала Дата начала
Забаненный
Забаненный
Статус
Оффлайн
Регистрация
16 Май 2017
Сообщения
41
Реакции
4
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Встречаются ситуации, когда программе нужно выбрать, какую операцию ей выполнить, в зависимости от определенного условия.
К примеру, мы вводим с клавиатуры целое число. Если это число больше десяти, то программа должна выполнить одно действие, иначе — другое. Реализуем этот алгоритм на C++ с помощью конструкции ветвления.​
Код:
Expand Collapse Copy
#include <iostream>
using namespace std;

int main()
{
    setlocale(0, "");
    double num;

    cout << "Введите произвольное число: ";
    cin >> num;

    if (num < 10) { // Если введенное число меньше 10.
        cout << "Это число меньше 10." << endl;
    } else { // иначе
        cout << "Это число больше либо равно 10." << endl;
    }
    return 0;
}
Если вы запустите эту программу, то при вводе числа, меньшего десяти, будет выводиться соответствующее сообщение.
Если введенное число окажется большим, либо равным десяти — отобразится другое сообщение.

Оператор if
Оператор if служит для того, чтобы выполнить какую-либо операцию в том случае, когда условие является верным. Условная конструкция в С++ всегда записывается в круглых скобках после оператора if.
Внутри фигурных скобок указывается тело условия. Если условие выполнится, то начнется выполнение всех команд, которые находятся между фигурными скобками.


Пример конструкции ветвления
Код:
Expand Collapse Copy
if (num < 10) {  // Если введенное число меньше 10.
    cout << "Это число меньше 10." << endl;
} else {  // иначе
    cout << "Это число больше либо равно 10." << endl;
}
Здесь говорится: «Если переменная num меньше 10 — вывести соответствующее сообщение. Иначе, вывести другое сообщение».
Усовершенствуем программу так, чтобы она выводила сообщение, о том, что переменная num равна десяти:​
Код:
Expand Collapse Copy
if (num < 10) {  // Если введенное число меньше 10.
    cout << "Это число меньше 10." << endl;
} else if (num == 10) {
    cout << "Это число равно 10." << endl;
} else {  // иначе
    cout << "Это число больше 10." << endl;
}
Здесь мы проверяем три условия:​
  • Первое - когда введённое число меньше 10-ти
  • Второе - когда число равно 10-ти
  • Третье - когда число больше 10-ти
Заметьте, что во втором условии, при проверке равенства, мы используем оператор равенства — ==, а не оператор присваивания, потому что мы не изменяем значение переменной при проверке, а сравниваем ее текущее значение с числом 10.​
  • Если поставить оператор присваивания в условии, то при проверке условия, значение переменной изменится, после чего это условие выполнится.
Каждому оператору if соответствует только один оператор else. Совокупность этих операторов — else if означает, что если не выполнилось предыдущее условие, то проверить данное. Если ни одно из условий не верно, то выполняется тело оператора else.
Если после оператора if, else или их связки else if должна выполняться только одна команда, то фигурные скобки можно не ставить. Предыдущую программу можно записать следующим образом:​
Код:
Expand Collapse Copy
#include <iostream>
using namespace std;

int main()
{
    setlocale(0, "");
    double num;

    cout << "Введите произвольное число: ";
    cin >> num;

    if (num < 10) // Если введенное число меньше 10.
        cout << "Это число меньше 10." << endl;
    else if (num == 10)
        cout << "Это число равно 10." << endl;
    else  // иначе
        cout << "Это число больше 10." << endl;

    return 0;
}
Такой метод записи выглядит более компактно. Если при выполнении условия нам требуется выполнить более одной команды, то фигурные скобки необходимы. Например:​
Код:
Expand Collapse Copy
#include <iostream>
using namespace std;

int main()
{
    setlocale(0, "");
    double num;
    int k;

    cout << "Введите произвольное число: ";
    cin >> num;

    if (num < 10) {  // Если введенное число меньше 10.
        cout << "Это число меньше 10." << endl;
        k = 1;
    } else if (num == 10) {
        cout << "Это число равно 10." << endl;
        k = 2;
    } else {  // иначе
        cout << "Это число больше 10." << endl;
        k = 3;
    }

    cout << "k = " << k << endl;
    return 0;
}
Данная программа проверяет значение переменной num. Если она меньше 10, то присваивает переменной k значение единицы. Если переменная num равна десяти, то присваивает переменной k значение двойки. В противном случае — значение тройки. После выполнения ветвления, значение переменной k выводится на экран.​
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Встречаются ситуации, когда программе нужно выбрать, какую операцию ей выполнить, в зависимости от определенного условия.
К примеру, мы вводим с клавиатуры целое число. Если это число больше десяти, то программа должна выполнить одно действие, иначе — другое. Реализуем этот алгоритм на C++ с помощью конструкции ветвления.​
Код:
Expand Collapse Copy
#include <iostream>
using namespace std;

int main()
{
    setlocale(0, "");
    double num;

    cout << "Введите произвольное число: ";
    cin >> num;

    if (num < 10) { // Если введенное число меньше 10.
        cout << "Это число меньше 10." << endl;
    } else { // иначе
        cout << "Это число больше либо равно 10." << endl;
    }
    return 0;
}
Если вы запустите эту программу, то при вводе числа, меньшего десяти, будет выводиться соответствующее сообщение.
Если введенное число окажется большим, либо равным десяти — отобразится другое сообщение.

Оператор if
Оператор if служит для того, чтобы выполнить какую-либо операцию в том случае, когда условие является верным. Условная конструкция в С++ всегда записывается в круглых скобках после оператора if.
Внутри фигурных скобок указывается тело условия. Если условие выполнится, то начнется выполнение всех команд, которые находятся между фигурными скобками.


Пример конструкции ветвления
Код:
Expand Collapse Copy
if (num < 10) {  // Если введенное число меньше 10.
    cout << "Это число меньше 10." << endl;
} else {  // иначе
    cout << "Это число больше либо равно 10." << endl;
}
Здесь говорится: «Если переменная num меньше 10 — вывести соответствующее сообщение. Иначе, вывести другое сообщение».
Усовершенствуем программу так, чтобы она выводила сообщение, о том, что переменная num равна десяти:​
Код:
Expand Collapse Copy
if (num < 10) {  // Если введенное число меньше 10.
    cout << "Это число меньше 10." << endl;
} else if (num == 10) {
    cout << "Это число равно 10." << endl;
} else {  // иначе
    cout << "Это число больше 10." << endl;
}
Здесь мы проверяем три условия:​
  • Первое - когда введённое число меньше 10-ти
  • Второе - когда число равно 10-ти
  • Третье - когда число больше 10-ти
Заметьте, что во втором условии, при проверке равенства, мы используем оператор равенства — ==, а не оператор присваивания, потому что мы не изменяем значение переменной при проверке, а сравниваем ее текущее значение с числом 10.​
  • Если поставить оператор присваивания в условии, то при проверке условия, значение переменной изменится, после чего это условие выполнится.
Каждому оператору if соответствует только один оператор else. Совокупность этих операторов — else if означает, что если не выполнилось предыдущее условие, то проверить данное. Если ни одно из условий не верно, то выполняется тело оператора else.
Если после оператора if, else или их связки else if должна выполняться только одна команда, то фигурные скобки можно не ставить. Предыдущую программу можно записать следующим образом:​
Код:
Expand Collapse Copy
#include <iostream>
using namespace std;

int main()
{
    setlocale(0, "");
    double num;

    cout << "Введите произвольное число: ";
    cin >> num;

    if (num < 10) // Если введенное число меньше 10.
        cout << "Это число меньше 10." << endl;
    else if (num == 10)
        cout << "Это число равно 10." << endl;
    else  // иначе
        cout << "Это число больше 10." << endl;

    return 0;
}
Такой метод записи выглядит более компактно. Если при выполнении условия нам требуется выполнить более одной команды, то фигурные скобки необходимы. Например:​
Код:
Expand Collapse Copy
#include <iostream>
using namespace std;

int main()
{
    setlocale(0, "");
    double num;
    int k;

    cout << "Введите произвольное число: ";
    cin >> num;

    if (num < 10) {  // Если введенное число меньше 10.
        cout << "Это число меньше 10." << endl;
        k = 1;
    } else if (num == 10) {
        cout << "Это число равно 10." << endl;
        k = 2;
    } else {  // иначе
        cout << "Это число больше 10." << endl;
        k = 3;
    }

    cout << "k = " << k << endl;
    return 0;
}
Данная программа проверяет значение переменной num. Если она меньше 10, то присваивает переменной k значение единицы. Если переменная num равна десяти, то присваивает переменной k значение двойки. В противном случае — значение тройки. После выполнения ветвления, значение переменной k выводится на экран.​

Хорошим тоном считается использование "Венгерской" нотации. И ещё нужно инициализировать переменные при их создание.
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Как ты уже заебал сливать все с этого сайта!!След гайд будет про "Циклы"?
Пожалуйста, авторизуйтесь для просмотра ссылки.
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Назад
Сверху Снизу