Умовні оператори в C++: Оператор switch-case

Прокрутити вниз

Умовні оператори в C++: Оператор switch-case репетитор з програмування для дітей

1. Що таке switch-case?

Оператор switch-case використовується для перевірки одного значення на кілька можливих варіантів.

Його часто застосовують, коли є багато if-else if-else умов, які перевіряють одне й те саме.

Коли використовувати switch-case замість if-else?

✅ Якщо потрібно перевірити одну змінну на багато можливих значень.
✅ Якщо всі перевірки — це порівняння на рівність (==).
✅ Якщо код має бути більш читабельним і зручним.

2. Синтаксис switch-case

switch (змінна) {
    case значення1:
        // Код, якщо змінна == значення1
        break;
    case значення2:
        // Код, якщо змінна == значення2
        break;
    case значення3:
        // Код, якщо змінна == значення3
        break;
    default:
        // Код, якщо жоден з case не спрацював
}

🔹 Важливе про switch-case:

  • case перевіряє, чи змінна дорівнює певному значенню.
  • break; зупиняє виконання switch, щоб не виконувалися інші case.
  • default (необов’язковий) виконується, якщо жоден case не спрацював.3. Приклади використання

Приклад 1: Визначення дня тижня

#include <iostream>
using namespace std;

int main() {
    int day;
    cout << "Введіть номер дня тижня (1-7): ";
    cin >> day;

    switch (day) {
        case 1:
            cout << "Понеділок" << endl;
            break;
        case 2:
            cout << "Вівторок" << endl;
            break;
        case 3:
            cout << "Середа" << endl;
            break;
        case 4:
            cout << "Четвер" << endl;
            break;
        case 5:
            cout << "П’ятниця" << endl;
            break;
        case 6:
            cout << "Субота" << endl;
            break;
        case 7:
            cout << "Неділя" << endl;
            break;
        default:
            cout << "Помилка! Введіть число від 1 до 7." << endl;
    }

    return 0;
}

🔹 Як працює код:

  • Користувач вводить число від 1 до 7.
  • switch перевіряє, якому case воно відповідає, і виводить відповідний день.
  • Якщо число не від 1 до 7, виконується default.

4. Чому важливий break?

Якщо не використовувати break, код не зупиниться після виконання case, а продовжить виконувати наступні case.

Приклад 2: Без break

#include <iostream>
using namespace std;

int main() {
    int day;
    cout << "Введіть номер дня тижня (1-7): ";
    cin >> day;

    switch (day) {
        case 1:
            cout << "Понеділок" << endl;
        case 2:
            cout << "Вівторок" << endl;
        case 3:
            cout << "Середа" << endl;
        default:
            cout << "Помилка або інший день!" << endl;
    }

    return 0;
}

🔹 Що буде, якщо ввести 1?
✅ Виведе:

Понеділок  
Вівторок  
Середа  
Помилка або інший день!  

Висновок: потрібно завжди додавати break після кожного case, якщо не хочемо, щоб виконувались інші варіанти.

5. Групування case

Якщо кілька case мають виконувати один і той самий код, їх можна об’єднати.

Приклад 3: Визначення пори року

#include <iostream>
using namespace std;

int main() {
    int month;
    cout << "Введіть номер місяця (1-12): ";
    cin >> month;

    switch (month) {
        case 12: case 1: case 2:
            cout << "Зима" << endl;
            break;
        case 3: case 4: case 5:
            cout << "Весна" << endl;
            break;
        case 6: case 7: case 8:
            cout << "Літо" << endl;
            break;
        case 9: case 10: case 11:
            cout << "Осінь" << endl;
            break;
        default:
            cout << "Помилка! Введіть число від 1 до 12." << endl;
    }

    return 0;
}

🔹 Як працює код:

  • Якщо місяць 1, 2 або 12, виведе "Зима".
  • Якщо місяць 3, 4 або 5, виведе "Весна".
  • І так далі…

💡 Коли варто групувати case?
✅ Коли кілька значень мають однаковий результат.

6. Практичні завдання

Завдання 1: Калькулятор

Напишіть програму, яка запитує два числа і операцію (+, -, *, /), а потім виводить результат.

Завдання 2: Переклад оцінок

Користувач вводить оцінку від 1 до 5.
Програма виводить її словесний еквівалент:

  • 5"Відмінно"
  • 4"Добре"
  • 3"Задовільно"
  • 2"Незадовільно"
  • 1"Дуже погано"

Завдання 3: Автомат із напоями

Програма запитує номер напою (1-5) і виводить його назву.

1"Чай"
2"Кава"
3"Сік"
4"Вода"
5"Лимонад"
✅ Інакше → "Такого напою немає в меню!"

📝 Підсумок 

switch-case використовується, коли потрібно перевірити змінну на кілька значень.
break зупиняє виконання після case.
default виконується, якщо жоден case не спрацював.
case можна групувати, якщо вони мають спільний код.

🚀 Наступний урок: Цикли в C++ (for, while, do-while)! Умовні оператори в C++: Оператор switch-case репетитор з програмування для дітей

Insert math as
Block
Inline
Additional settings
Formula color
Text color
#333333
Type math using LaTeX
Preview
\({}\)
Nothing to preview
Insert