Перейти до основного вмісту
Модуль 1 · Урок 2 із 22/14 у курсі~12 min
Модульні уроки (2/2)

Контроль потоку

Щоб зробити наші програми динамічними та здатними приймати рішення, ми використовуємо структури потоку керування: умовні оператори та цикли.

Умовні: if, else if та else

Інструкція if виконує блок коду, лише якщо виконується певна логічна умова.

Java
int temperature = 25;

if (temperature > 30) {
    System.out.println("Fa molto caldo!");
} else if (temperature >= 20) {
    System.out.println("Il clima è piacevole.");
} else {
    System.out.println("Fa freddo.");
}

Логічні оператори

Ми можемо комбінувати кілька умов за допомогою логічних операторів:

  • && (AND): повертає true, якщо обидві умови виконуються.
  • || (OR): повертає true, якщо принаймні одна з умов виконується.
  • ! (NOT): змінює логічне значення умови.
Java
boolean hasLicense = true;
boolean hasCar = false;

if (hasLicense && hasCar) {
    System.out.println("Puoi guidare.");
}

Цикли: while та for

Цикли дозволяють нам багаторазово виконувати блок коду.

Петля while

Виконує код, поки задана умова залишається true.

Java
int count = 1;
while (count <= 3) {
    System.out.println("Conteggio: " + count);
    count++; // Increment count by 1
}

Петля for

Ідеально, коли ми знаємо заздалегідь кількість ітерацій, які потрібно виконати. Синтаксис вимагає ініціалізації, умови завершення та виразу збільшення.

Java
for (int i = 0; i < 5; i++) {
    System.out.println("Iteration: " + i);
}

Розширені умови: switch

Коли нам потрібно порівняти одну змінну з кількома постійними значеннями, оператор switch робить код набагато чистішим, ніж кілька ланцюжкових блоків if-else.

Java
int dayOfWeek = 3;
switch (dayOfWeek) {
    case 1:
        System.out.println("Monday");
        break;
    case 2:
        System.out.println("Tuesday");
        break;
    case 3:
        System.out.println("Wednesday");
        break;
    default:
        System.out.println("Other day");
}

Контроль циклу: break та continue

Ми можемо змінити нормальний потік циклу за допомогою двох спеціальних операторів:

  • break: негайно припиняє виконання самого внутрішнього циклу, повністю виходячи з нього.
  • continue: пропускає решту коду в поточній ітерації та переходить безпосередньо до оцінки умови для наступної ітерації (або виразу збільшення в циклі for).
Java
for (int i = 1; i <= 5; i++) {
    if (i == 3) {
        continue; // Skips printing for the number 3
    }
    System.out.println(i);
}

Спробуйте самі

вправи#java.m1.l2.e1
Спроби: 0Завантаження…

Завершіть код, перевіривши змінну оцінки: якщо вона більше або дорівнює 60, надрукуйте Pass, інакше надрукуйте Fail.

Завантаження редактора…
Показати підказку

Використовуйте `if (оцінка >= 60) { ... } else { ... }` і виведіть точний запитаний рядок.

Рішення доступне після 3 спроб

вправи#java.m1.l2.e2
Спроби: 0Завантаження…

Напишіть цикл for, щоб виводити числа від 1 до 5 (включно) в окремих рядках.

Завантаження редактора…
Показати підказку

Використовуйте ініціалізацію `int i = 1`, умову `i <= 5` та приріст `i++` всередині заголовка циклу `for`.

Рішення доступне після 3 спроб

вправи#java.m1.l2.e3
Спроби: 0Завантаження…

Завершіть код, використовуючи цикл while, щоб надрукувати числа від 3 до 1 (включно) в окремих рядках.

Завантаження редактора…
Показати підказку

Напишіть `while (count >= 1) { ... }`, друкуючи `count`, а потім зменшуючи його за допомогою `count--;`.

Рішення доступне після 3 спроб