switch-case в C++: что это и как с ней работать
Всем привет! В C++ благодаря условным операторам if и else можем выбирать по какому пути идти. Но если нам понадобится проверить несколько выражений, использовать оператор if будет не разумно из-за того что в C++ есть - switch.
Что такое switch
Это множественный условный оператор. Он работает также как несколько условий if, но может проверять лишь одну переменную в своих условиях. Если одно условие является правильным происходит выход.
Для его использования не нужно подключать какие-то дополнительные библиотеки, кроме стандартной <iostream>
.
switch (переменная) {
}
Для проверки условия нужно использовать конструкцию case:
switch (x) {
case < проверяемое значение >:
cout << ""; // ваш
var a = 5; // блок кода
break;
}
После слова case
используются :
(двоеточие), а в самом ее конце должен присутствовать оператор break
.
Чтобы проще ориентироваться в коде можно применять скобки.
case 5:{
// что то выполняется
break;
}
Что такое default
Он работает лишь когда все case
являются не верными. В конструкции использовать не обязательно.
int x = 9;
switch (x) {
case 5:
cout << "Значение равно 5";
break;
case 6:
cout << "Значение равно 6";
break;
case 0:
cout << "Значение равно zero";
break;
default:
cout << "Значение не равно 5, 6 и даже 0";
}
Значение не равно 5, 6 и даже zero
Process returned 0 (0x0) execution time : 0.010 s
Press any key to continue.
Если ни одно case
и default
не правильны, то программа выйдет из switch
и продолжит работать дальше.
Пример использования switch
Давайте сделаем программу с использованием switch. Смысл программы будет заключаеться в нахождении суммы, разности, умножения, деления двух чисел, которые, как и операции будет выбирать пользователь.
- 5 - сумма
- 8 - разность
- 9 - умножение
- 7 - деление
число равно размеру слова
int str;
int first, second;
cout << "Введите первое число: "; cin >> first;
cout << "Введите второе число: "; cin >> second;
cout << "Укажите какую операцию использовать: "cin >> str;
switch (str) {
case 5:
cout << "Сумма: " << first + second;
break;
case 8:
cout << "Вычитание: " << first - second;
break;
case 9:
cout << "Умножение: " << first * second;
break;
case 7:
cout << "Деление: " << first / second;
break;
default:
cout << "Что-то пошло не так. Повторите попытку";
}
- В строках 10, 13, 16, 19: применяется проверка значений
str
. - В строке 22: если пользователь ошибся с числом, то программа его оповестит с помощью оператора
default
.
Вот пример успешного выполнения программы:
Введите первое число: 5
Введите первое число: 7
Укажите какую операцию использовать: 9
Умножение: 35
Process returned 0 (0x0) execution time : 0.010 s
Press any key to continue.
Вот и все! Надеемся этот урок был для вас полезен. Удачи!
Если хотите всегда быть в курсе последних новостей в мире программирования и IT, подписываетесь на мой Telegram-канал, где я делюсь свежими статьями, новостями и полезными советами. Буду рад видеть вас среди подписчиков!
Обсуждение