Lekcje modułu (2/2)
Kontrola przepływu
Aby nasze programy były dynamiczne i mogły podejmować decyzje, używamy struktur kontroli przepływu: instrukcji warunkowych i pętli.
Instrukcje Warunkowe: if, else if i else
Instrukcja if wykonuje blok kodu tylko wtedy, gdy określony warunek logiczny jest prawdziwy.
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.");
}
Operatory Logiczne
Możemy łączyć wiele warunków za pomocą operatorów logicznych:
&&(AND): Zwracatrue, jeśli oba warunki są prawdziwe.||(OR): Zwracatrue, jeśli co najmniej jeden z warunków jest prawdziwy.!(NOT): Odwraca wartość logiczną warunku.
boolean hasLicense = true;
boolean hasCar = false;
if (hasLicense && hasCar) {
System.out.println("Puoi guidare.");
}
Pętle: while i for
Pętle pozwalają na wielokrotne wykonywanie bloku kodu.
Pętla while
Wykonuje kod tak długo, jak określony warunek pozostaje prawdziwy (true).
int count = 1;
while (count <= 3) {
System.out.println("Conteggio: " + count);
count++; // Zwiększa count o 1
}
Pętla for
Idealna, gdy z góry znamy liczbę iteracji do wykonania. Składnia wymaga inicjalizacji, warunku zakończenia oraz wyrażenia inkrementacji.
for (int i = 0; i < 5; i++) {
System.out.println("Iterazione: " + i);
}
Zaawansowane Warunki: switch
Gdy musimy porównać pojedynczą zmienną z wieloma stałymi wartościami, instrukcja switch sprawia, że kod jest znacznie czytelniejszy niż wiele połączonych bloków if-else.
int dayOfWeek = 3;
switch (dayOfWeek) {
case 1:
System.out.println("Lunedì");
break;
case 2:
System.out.println("Martedì");
break;
case 3:
System.out.println("Mercoledì");
break;
default:
System.out.println("Altro giorno");
}
Kontrola Pętli: break i continue
Możemy modyfikować normalny przepływ pętli za pomocą dwóch specjalnych instrukcji:
break: natychmiast przerywa wykonywanie najbliższej pętli, wychodząc z niej.continue: pomija resztę kodu w bieżącej iteracji i przechodzi bezpośrednio do sprawdzania kolejnego warunku (lub inkrementacji w pętlifor).
for (int i = 1; i <= 5; i++) {
if (i == 3) {
continue; // Pomija wypisywanie dla liczby 3
}
System.out.println(i);
}
Spróbuj sam
Uzupełnij kod, sprawdzając zmienną score: jeśli jest większa lub równa 60, wypisz Pass, w przeciwnym razie wypisz Fail.
Pokaż wskazówkę
Użyj `if (score >= 60) { ... } else { ... }` i wypisz dokładnie żądany ciąg znaków.
Rozwiązanie dostępne po 3 próbach
Napisz pętlę for, aby wypisać na ekranie liczby od 1 do 5 (włącznie) w osobnych liniach.
Pokaż wskazówkę
Użyj inicjalizacji `int i = 1`, warunku `i <= 5` i inkrementacji `i++` wewnątrz nagłówka pętli `for`.
Rozwiązanie dostępne po 3 próbach
Uzupełnij kod przy użyciu pętli while, aby wypisać na ekranie liczby od 3 do 1 (włącznie) w kolejności malejącej w osobnych liniach.
Pokaż wskazówkę
Napisz `while (count >= 1) { ... }` wypisując `count`, a następnie zmniejszając go za pomocą `count--;`.
Rozwiązanie dostępne po 3 próbach