Урок 4: Структури Управління – Як Приймати Рішення (І Казати Своїй Програмі Що Робити!)
Вітаю з поверненням, сміливий мандрівник у світі коду! 🗺️
До цього моменту ти вже навчився зберігати числа, виконувати якісь обчислення та змушувати свої змінні працювати. Але тепер час підняти планку і керувати потоком своєї програми. Бо, якщо чесно, якщо твій код не може приймати рішення або повторювати завдання, то це як GPS, що не вміє перебудувати маршрут — повний хаос!
Готуйся дослідити загадковий світ структур управління. Від умов if
до циклів, ти скоро будеш тримати кермо і вирішувати, що має робити твоя програма і коли. Тож пристебнись, візьми чашечку кави (краще подвійну сьогодні), і погнали!
Умови If – Вчимо Твій Код Думати
Почнемо з основ: інструкція if
. Уяви, що це вибивала на вході в клуб — пропускає лише тих, у кого все в порядку.
Синтаксис простий:
if (умова) {
// код для виконання, якщо умова істинна
}
Уяви, що у тебе є програма, яка перевіряє, чи є в тебе достатньо кави в чашці:
#include <stdio.h>
int main() {
int kava = 3;
if (kava > 0) {
printf("Продовжуй програмувати, у тебе ще є кава!\n");
}
return 0;
}
Пояснення: Якщо значення kava
більше 0, програма виведе “Продовжуй програмувати, у тебе ще є кава!”. Інакше вона просто мовчатиме — як хороший бариста, який не лізе, коли ти залишився без кофеїну.
Інструкція else
– Як Працювати з “От Лихо!” Сценаріями
А що, якщо кава закінчилася? Ти ж не хочеш, щоб твоя програма просто сиділа і дивилася на тебе порожніми очима. Тут у гру вступає інструкція else
:
if (kava > 0) {
printf("Продовжуй програмувати, у тебе ще є кава!\n");
} else {
printf("Кава закінчилася! Пора на кухню за новою порцією.\n");
}
Тепер з else
твоя програма знає, як поводитись в обох випадках. Це як мати план “Б” — бо ніхто не хоче програмувати без кави!
Інструкція else if
– Додаємо Більше Умов
А що, якщо в тебе занадто багато кави? (Так, таке буває!) Додаємо ще одну умову з else if
:
if (kava > 5) {
printf("Ей, не захоплюйся кавою! Час пригальмувати.\n");
} else if (kava > 0) {
printf("Продовжуй програмувати, у тебе ще є кава!\n");
} else {
printf("Кава закінчилася! Пора на кухню за новою порцією.\n");
}
Тепер твоя програма обробляє три сценарії:
- Якщо у тебе більше 5 чашок — програма каже, щоб ти трохи збавив оберти.
- Якщо залишилося трохи кави, вона підбадьорює тебе продовжувати.
- Якщо кави немає, посилає тебе до кавоварки.
Інструкція switch
– Коли Багато Опцій
Якщо if
, else
і else if
схожі на дорожні знаки, то switch
— це як світлофор із кількома смугами руху. Використовуй switch
, коли у тебе є одне значення і кілька можливих результатів.
Уяви, що хочеш перевірити день тижня:
#include <stdio.h>
int main() {
int den = 4; // Припустимо, 4 — це четвер
switch (den) {
case 1:
printf("Понеділок… Ех.\n");
break;
case 2:
printf("Вівторок… майже тягнемо!\n");
break;
case 3:
printf("Середа, ми на середині!\n");
break;
case 4:
printf("Четвер, майже вихідні!\n");
break;
case 5:
printf("П’ятниця, час святкувати!\n");
break;
case 6:
case 7:
printf("Вихідні! Час для відпочинку.\n");
break;
default:
printf("Невірний день...\n");
}
return 0;
}
Пояснення: Залежно від значення den
, програма виводить різне повідомлення. switch
ідеальний, коли у тебе багато варіантів і ти не хочеш забивати код купою if
.
Цикли – Змусь Свій Код Працювати Без Перерви
Отже, ми розібралися з умовами, тепер час поговорити про те, як змусити програму повторювати дії знову і знову. Саме тут вступають у гру цикли. Цикли — це як бігова доріжка програмування — вони крутяться, поки ти не скажеш їм зупинитись.
- Цикл
for
– Ідеально, коли знаєш точно, скільки разів хочеш щось повторити.
for (int i = 0; i < 5; i++) {
printf("Ітерація %d\n", i);
}
- Цикл
while
– Супер, коли не знаєш, скільки разів повторювати.
int kava = 3;
while (kava > 0) {
printf("У тебе ще залишилося %d чашок кави.\n", kava);
kava--; // Випиваєш одну чашку
}
- Цикл
do-while
– Якwhile
, але виконується мінімум один раз.
int kava = 0;
do {
printf("Потрібно поповнити запаси кави!\n");
} while (kava > 0);
Поширені Помилки у Циклах
-
Нескінченні Цикли: Забув змінити значення змінної циклу — вітаю, програма застрягла назавжди! Завжди май план виходу.
-
Помилки Off-By-One:
for (int i = 0; i <= 5; i++)
запуститься 6 разів, а не 5. Перевіряй умови обережно! -
Break і Continue: Використовуй
break
, щоб вийти з циклу раніше, аcontinue
, щоб перескочити до наступної ітерації.
Домашнє Завдання: Створи Гру-Вгадалку!
Перевір свої нові навички, створивши гру-вікторину. Ось що потрібно зробити:
- Вибери випадкове число від 1 до 10.
- Запитай у користувача, щоб він його вгадав.
- Використовуй
if
іwhile
, щоб підказувати та продовжувати запитувати, поки користувач не вгадає правильно.
Бонусні Бали: Додай лічильник спроб, щоб відстежувати, скільки разів користувач намагався вгадати. Подивись, чи зможеш ти побити свій власний рекорд!
Фінальні Думки
Сьогодні ти опанував структури управління — справжню основу кожної складної програми. Але не поспішай знімати свій програмістський капелюх! Приєднуйся до мене на Уроці 5, де ми зануримося в дивовижний світ функцій. Готуйся структурувати свій код, уникати повторів і стати справжнім майстром функцій! 🧙♂️✨
See also
- Урок 8: Вказівники та Пам'ять – Як Керувати Адресами (І Не Заблукати!)
- Урок 7: Рядки – Перетворюємо Символи в Слова (І Надаємо Їм Змісту)
- Урок 6: Масиви – Організуй Свої Дані Як Профі
- Урок 5: Функції – Як Навести Порядок у Хаосі (І Уникнути Повторення Коду!)
- Урок 3: Арифметичні Операції – Змусь Свої Змінні Працювати на Тебе!