Конструкция switch case в C++: что это и как с ней работать
Всем привет! В C++ благодаря условным операторам if и else можем выбирать по какому пути идти. Но если нам понадобится проверить несколько выражений, использовать оператор if будет не разумно из-за того что в C++ есть — switch.
Что такое switch
Это множественный условный оператор. Он работает также как несколько условий if, но может проверять лишь одну переменную в своих условиях. Если одно условие является правильным происходит выход.
Для его использования не нужно подключать какие-то дополнительные библиотеки, кроме стандартной <iostream>
.
1 2 3 |
switch (переменная) { } |
Для проверки условия нужно использовать конструкцию case:
1 2 3 4 5 6 |
switch (x) { case < проверяемое значение >: cout << ""; // ваш var a = 5; // блок кода break; } |
После слова case
используются :
(двоеточие), а в самом ее конце должен присутствовать оператор break
.
Чтобы проще ориентироваться в коде можно применять скобки.
1 2 3 4 |
case 5:{ // что то выполняется break; } |
Что такое default
Он работает лишь когда все case
являются не верными. В конструкции использовать не обязательно.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
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"; } |
Если ни одно case
и default
не правильны, то программа выйдет из switch
и продолжит работать дальше.
Пример использования switch
Давайте сделаем программу с использованием switch. Смысл программы будет заключаеться в нахождении суммы, разности, умножения, деления двух чисел, которые, как и операции будет выбирать пользователь.
- 5 — сумма
- 8 — разность
- 9 — умножение
- 7 — деление
число равно размеру слова
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
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
.
Вот пример успешного выполнения программы:
Вот и все! Надеемся этот урок был для вас полезен. Удачи!
Добавить комментарий