Презентація до уроку на тему: "Оператор switch"

Про матеріал
Зараз мова C++ широко використовується для розробки програмного забезпечення, будучи однією з найпопулярніших мов програмування. З її допомогою створюють операційні системи, різноманітні прикладні програми, драйвери пристроїв, ігри тощо.
Зміст слайдів
Номер слайду 1

Тема уроку:«Оператор SWITCH"

Номер слайду 2

Розгалужені структури алгоритму:1) Повне розгалуження;2) Неповне розгалуження. Розгалужений алгоритм – це алгоритм, який містить хоча б одну умову. Умова – це вислів про який можна сказати так або ні (виконується, не виконується)Iснує дві форми розгалуженого алгоритму: - повна; - неповна.

Номер слайду 3

Найпростішими умовними розгалуженнями в мові С++ є стейтменти if/else. Вони виглядають наступним чином: Вираз називається умовою (або “умовним виразом”). Якщо результатом виразу є true (будь-яке ненульове значення), то виконуватися буде стейтмент1. Якщо ж результатом виразу є false (0), то виконуватися буде стейтмент2.

Номер слайду 4

Загальна ідея операторів switch проста: вираз оператора switch має генерувати значення, а кожен випадок (або “case”) перевіряє це значення на відповідність. Якщо case збігається з виразом switch, то виконуються інструкції під відповідним кейсом. Якщо case не відповідає виразу switch, то виконуються інструкції після кейсу default (якщо його взагалі вказали).

Номер слайду 5

Спочатку пишеться ключове слово switch, за яким слідує вираз, з яким ми хочемо працювати. Зазвичай цим виразом є окрема змінна, але це може бути і щось більш складне, наприклад, n. X + 2 чи n. X − n. Y. Єдине обмеження для цього виразу — воно повинно бути інтегрального типу даних (тобто char, short, int, long, long long чи enum). Змінні типу з плаваючою крапкою або неінтегральні типи використовуватися не можуть. Після виразу switch ми оголошуємо блок. Усередині блоку ми використовуємо лейбли (англ. “labels”) для визначення всіх значень, які ми хочемо перевірити на відповідність з виразом. Існує два типи лейблів.

Номер слайду 6

Лейбли CASE Перший вид лейблів — це case (або просто “кейс”), який оголошується з використанням ключового слова case і має константний вираз. Константний вираз — це той вираз, який генерує константне значення, іншими словами це літерал (наприклад, 5), перерахування (наприклад, COLOR_RED) чи константа (наприклад, змінна x, яка була оголошена з ключовим словом const). Константний вираз, що знаходиться після ключового слова case, перевіряється на відповідність виразу, що знаходяться біля ключового слова switch. Якщо вони збігаються, то тоді виконується код під відповідним кейсом. Варто відзначити, що всі вирази case повинні генерувати унікальні значення. Тобто, два однакових кейси бути не може. Можна використовувати відразу декілька кейсів для одного виразу. 

Номер слайду 7

Лейбл DEFAULT Другий тип лейбла — це лейбл за замовчуванням (так званий “default case”), який оголошується з використанням ключового слова default. Код під цим лейблом виконується, якщо жоден з кейсів не відповідає виразу switch. Лейбл за замовчуванням є необов’язковим. В одному switch може бути тільки один default. Зазвичай його оголошують останнім в блоці switch.

Номер слайду 8

Одна з найбільш каверзних речей в switch — це послідовність виконання коду. Коли відбувся збіг з кейсом (або виконується default), то виконання починається з першого стейтменту, який знаходиться після відповідного кейса і триває до тих пір, поки не буде виконано одну з наступних умов завершення:   Досягнуто кінець блоку switch.   Виконується оператор return.   Виконується оператор goto.   Виконується оператор break. Зверніть увагу, якщо жодної з цих умов завершення не буде, то виконуватися будуть всі кейси після того кейса, який співпав з виразом switch. Наприклад:

Номер слайду 9

А ось це точно не те, що нам потрібно!Нам потрібно, щоб в результаті було лише число 2. 

Номер слайду 10

Оператор break (оголошений з використанням ключового слова break) повідомляє компілятору, що ми вже зробили все, що хотіли з певним switch (або циклом while, do while чи for) і більше не маємо наміру з ним працювати. Коли компілятор зустрічає оператор break, то виконання коду переходить зі switch на наступний рядок після блоку switch. Розглянемо вищенаведений приклад, але вже з коректно вставленими операторами break:

Номер слайду 11

Оскільки другий кейс відповідає виразу switch, то виводиться 2, і оператор break завершує виконання блоку switch. Решта кейсів пропускаються.

Номер слайду 12

УВАГА!!! Не забувайте використовувати оператор break в кінці кожного кейсу. Його відсутність — одна з найпоширеніших помилок серед початківців! Також можна використовувати декілька стейтментів всередині блоку switch. Наприклад:виганяти,виводити

Номер слайду 13

Оголошення змінної і її ініціалізація всередині кейсу. Ви можете оголосити, але не ініціалізувати змінні всередині блоку case:

Номер слайду 14

Проте ініціалізація змінних безпосередньо в кейсах заборонена і викличе помилку компіляції. Це пов’язано з тим, що ініціалізація змінної вимагає виконання, а case, що містить ініціалізацію, — може ніколи не виконатися! Якщо в кейсі потрібно оголосити і/або ініціалізувати нову змінну, то це найкраще зробити, використовуючи блок стейтментів (фігурні дужки вказують на початок та кінець блоку) всередині кейсу:

Номер слайду 15

Правило: Якщо потрібно ініціалізувати і/або оголосити змінні всередині кейсу, то використовуйте блоки стейтментів.

Номер слайду 16

Задача_1 Користувач вводить порядковий номер пальця руки. Необхідно показати його назву на екран. Якщо ввести число більше п’яти, то має з’явитися повідомлення: «Такого пальця не існує» Результат:

Номер слайду 17

Задача_2 Напишіть код програми КАЛЬКУЛЯТОР calculate(), який приймає дві змінні типу int і одну змінну типу char, яка представляє одну з наступних математичних операцій: +, -, *, / або % (залишок від числа). Використайте switch для виконання відповідної математичної операції над цілими числами і поверніть результат. Якщо в функцію передається недійсний математичний оператор, то функція повинна виводити помилку. З оператором ділення виконайте цілочисельне ділення. Результат: return- вивести

Номер слайду 18

Номер слайду 19

Домашнє завдання. Опрацювати презентацію. Записати код розв’язку задач №1,2 Написати код програми «Калькулятор» так, щоб в консольному вікні відображалося все у такому вигляді: Введіть ціле число… Введіть інше ціле число… Виберіть математичну дію: 1. Додавання 2. Віднімання 3. Множення 4. Ділення 5. Остача від ділення!!! При виконанні зверніть увагу на дію ділення. Підказка – під час виконання ділення в результаті буде лише ціле число. Як вивести ще й дробову частину числа???

pptx
Додано
25 січня 2025
Переглядів
377
Оцінка розробки
Відгуки відсутні
Безкоштовний сертифікат
про публікацію авторської розробки
Щоб отримати, додайте розробку

Додати розробку