#4 - Умовні оператори. Умова if - else, а також switch case
Відеоурок
Умовні оператори дуже важливі, адже вони дозволяють виконувати різний код залежно від результату умови. У мові Сі існує три конструкції, що дозволяють здійснювати перевірку.
Конструкція if - else
За допомогою if else можна перевірити одну або кілька умов, і у разі їхньої успішної перевірки буде виконано один, інакше інший код.
Розглянемо приклад:
int a = 2, b = 10;
if (a == b) { // Якщо a буде дорівнювати b, тоді буде виконано код
// Тут код, що буде виконаний
// Якщо є лише один рядок коду, то фігурні дужки {}
// можна не ставити
} else if (a <= b) { // Якщо а буде меншим або рівним b
// Якщо попередня умова не буде виконана,
// а ця умова виявиться істинною,
// то буде виконано цей код
} else {
// Цей код спрацює, якщо інші умови не будуть виконані
}Ви можете прописати структуру лише з однією умовою if, а можете дописати до неї скільки завгодно вкладених умов else if.
Усередині кожної з умов можна прописувати інші конструкції if else, які перевірятимуть нові вирази.
Якщо потрібно перевірити кілька умов в одному операторі, то можна скористатися логічним «і» або логічним «або»:
if (a != b && a > b) {
// Код буде виконано, якщо і перша, і друга умова
// виявляться істинними
}
if (a < b || a == b) {
// Код буде виконано, якщо або перша, або друга умова
// виявиться істинною
}Тернарна операція
if else. Записується наступним чином:int x = 90, a = 8;
int res = x < a ? (x + a) : (x - a);
printf("%d\n", res);res встановлюємо їхню суму, інакше – їхню різницю. Конструкція switch
Конструкція case має зручніший формат для перевірки множинних умов на збіг значення. У конструкцію записується змінна, яка перевіряється, а також значення, на які відбувається перевірка.
Приклад оператора:
int x = 23;
switch (x) { // Перевіряємо змінну x
case 1: // Якщо змінна буде дорівнювати 1, то тут спрацює код
// Може бути багато рядків, а не лише один
printf("Змінна дорівнює 1\n");
break; // Вказуємо кінець для коду цієї перевірки
case 56: // Якщо змінна буде дорівнювати 56, то тут спрацює код
// Може бути багато рядків, а не лише один
printf("Змінна дорівнює 56\n");
break; // Вказуємо кінець для коду цієї перевірки
// За аналогією таких перевірок може бути багато
// Також можна додати перевірку, яка спрацює у випадку,
// якщо всі інші перевірки не спрацюють
default:
printf("Щось інше\n");
break; // Можна і не ставити, бо це остання умова
}Вихідний код
Весь код буде доступний після підписки на проект! Завдання до уроку
Необхідно оформити передплату на проект, щоб отримати доступ до всіх домашніх завдань
Велике завдання за курсом
Вам необхідно оформити передплату на сайті, щоб мати доступ до всіх великих завдань. У завдання входить методика рішення, а також готовий проект з відповіддю до завдання.
PS: подібні завдання доступні при підписці від 1 місяця
Також варто подивитися