Оператор Switch
Оператор switch
— це конструкція керування потоком у програмуванні, яка використовується для виконання одного з декількох можливих блоків коду залежно від значення однієї змінної або виразу. Це більш структурована та зрозуміла альтернатива використанню декількох операторів if-else
при порівнянні одного й того ж значення з кількома можливими варіантами.
main.cpp
switch.h
1234567891011121314151617181920212223242526272829#include <iostream> int main() { int userOption = 1; // 1: Check, 2: Deposit, 3: Withdraw, 4: Exit switch (userOption) { case 1: std::cout << "Checking balance...\n"; break; case 2: std::cout << "Depositing money...\n"; break; case 3: std::cout << "Withdrawing money...\n"; break; case 4: std::cout << "Exiting. Thank you!\n"; break; default: std::cout << "Invalid option.\n"; break; } }
Змінна userOption
перевіряється, і якщо її значення дорівнює 1
, програма виводить повідомлення про перевірку балансу рахунку. Оператор break
зупиняє подальше виконання всередині блоку switch-case
, запобігаючи виконанню інших випадків.
-
break
— оператор, що означає вихід із блоку коду; -
default
— необов’язкова, але корисна частина. Ця частина виконується, якщо жоден із випадків не підходить.
Ключове слово break
Однак існує важливий аспект оператора switch
, який слід враховувати. Якщо оператор break
навмисно вилучено з певного випадку, програма продовжить виконання наступних випадків, навіть якщо їхні умови не збігаються. Така поведінка, відома як fall-through (провалювання), може бути корисною у певних ситуаціях, але може призвести до неочікуваних результатів, якщо використовувати її необережно.
main.cpp
1234567891011121314151617181920212223242526#include <iostream> int main() { // Example user choice: 1 for Check Balance, 2 for Deposit, etc. int userOption = 1; // Simulating a banking system menu using a switch statement switch (userOption) { case 1: // Check account balance std::cout << "Checking account balance..." << std::endl; case 2: // Deposit money std::cout << "Depositing money into your account..." << std::endl; case 3: // Withdraw money std::cout << "Withdrawing money from your account..." << std::endl; case 4: // Exit std::cout << "Exiting the system. Thank you for banking with us!" << std::endl; default: // Invalid option std::cout << "Invalid option. Please choose a valid menu option." << std::endl; } }
Без команди break
потік виконання програми ігноруватиме всі наступні перевірки та просто виконуватиме команди наступних випадків до зустрічі оператора break
або завершення всього блоку switch
.
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат
Can you give an example of how fall-through works in a switch statement?
What are some scenarios where fall-through might be useful?
Can you explain the difference between using break and not using break in a switch statement?
Awesome!
Completion rate improved to 3.85
Оператор Switch
Свайпніть щоб показати меню
Оператор switch
— це конструкція керування потоком у програмуванні, яка використовується для виконання одного з декількох можливих блоків коду залежно від значення однієї змінної або виразу. Це більш структурована та зрозуміла альтернатива використанню декількох операторів if-else
при порівнянні одного й того ж значення з кількома можливими варіантами.
main.cpp
switch.h
1234567891011121314151617181920212223242526272829#include <iostream> int main() { int userOption = 1; // 1: Check, 2: Deposit, 3: Withdraw, 4: Exit switch (userOption) { case 1: std::cout << "Checking balance...\n"; break; case 2: std::cout << "Depositing money...\n"; break; case 3: std::cout << "Withdrawing money...\n"; break; case 4: std::cout << "Exiting. Thank you!\n"; break; default: std::cout << "Invalid option.\n"; break; } }
Змінна userOption
перевіряється, і якщо її значення дорівнює 1
, програма виводить повідомлення про перевірку балансу рахунку. Оператор break
зупиняє подальше виконання всередині блоку switch-case
, запобігаючи виконанню інших випадків.
-
break
— оператор, що означає вихід із блоку коду; -
default
— необов’язкова, але корисна частина. Ця частина виконується, якщо жоден із випадків не підходить.
Ключове слово break
Однак існує важливий аспект оператора switch
, який слід враховувати. Якщо оператор break
навмисно вилучено з певного випадку, програма продовжить виконання наступних випадків, навіть якщо їхні умови не збігаються. Така поведінка, відома як fall-through (провалювання), може бути корисною у певних ситуаціях, але може призвести до неочікуваних результатів, якщо використовувати її необережно.
main.cpp
1234567891011121314151617181920212223242526#include <iostream> int main() { // Example user choice: 1 for Check Balance, 2 for Deposit, etc. int userOption = 1; // Simulating a banking system menu using a switch statement switch (userOption) { case 1: // Check account balance std::cout << "Checking account balance..." << std::endl; case 2: // Deposit money std::cout << "Depositing money into your account..." << std::endl; case 3: // Withdraw money std::cout << "Withdrawing money from your account..." << std::endl; case 4: // Exit std::cout << "Exiting the system. Thank you for banking with us!" << std::endl; default: // Invalid option std::cout << "Invalid option. Please choose a valid menu option." << std::endl; } }
Без команди break
потік виконання програми ігноруватиме всі наступні перевірки та просто виконуватиме команди наступних випадків до зустрічі оператора break
або завершення всього блоку switch
.
Дякуємо за ваш відгук!