JavaScript - pętle - if - switch

INF.03 · JavaScript · lekcja 2

Decyzje i powtórzenia: if, switch, pętla for

Do tej pory program wykonywał się linijka po linijce, zawsze tak samo. Dziś nauczysz go podejmować decyzje (if, switch) i powtarzać czynności (for). Każdy kod możesz uruchomić przyciskiem Uruchom albo skrótem Ctrl+Enter.

Część 1

Instrukcje warunkowe

2.1

Warunek to pytanie z odpowiedzią tak/nie

Każda decyzja w programie zaczyna się od pytania, na które odpowiedź to true (prawda) albo false (fałsz). Takie pytania zadajesz operatorami porównania z poprzedniej lekcji: ===, !==, >, <, >=, <=.

2.2

if oraz if…else

if wykonuje blok kodu tylko wtedy, gdy warunek jest prawdziwy. else to plan B: wykona się, gdy warunek jest fałszywy. Zawsze wykona się dokładnie jeden z dwóch bloków.

Schemat do zapamiętania
if (warunek) {
  // gdy prawda
} else {
  // gdy fałsz
}

Warunek zawsze w ( nawiasach okrągłych ), kod do wykonania w { klamrach }. Po if (...) nie stawiamy średnika.

Źle: przypisanie, warunek zawsze prawdziwyif (wiek = 18) { ... }
Dobrze: porównanieif (wiek === 18) { ... }
Źle: średnik kończy ifif (wiek >= 18); { console.log("Pełnoletni"); }
Dobrzeif (wiek >= 18) { console.log("Pełnoletni"); }

Co wypisze ten kod?

let temp = 15;
if (temp > 20) {
  console.log("Ciepło");
}
console.log("Koniec");
2.3

else if: kilka możliwości

Gdy możliwości jest więcej niż dwie, dokładasz kolejne else if. JavaScript sprawdza warunki od góry i wykonuje pierwszy prawdziwy blok. Pozostałych już nie sprawdza.

let kwota = 450;if (kwota >= 500) {  rabat = 20;} else if (kwota >= 200) {  rabat = 10;} else {  rabat = 0;}

Schemat do zapamiętania
if (warunek1) {
  ...
} else if (warunek2) {
  ...
} else {
  ...   // gdy nic nie pasowało
}

Pierwszy pasujący wygrywa. Przy progach (kwoty, punkty, wiek) zaczynaj od największej wartości.

Kwota wynosi 600. Jaki rabat wyjdzie z tego kodu?

if (kwota >= 200) {
  rabat = 10;
} else if (kwota >= 500) {
  rabat = 20;
}
2.4

Łączenie warunków: && i ||

W jednym if możesz sprawdzić kilka rzeczy naraz. Przypomnienie z lekcji 1: && oznacza, że muszą być spełnione oba warunki, a ||, że wystarczy jeden.

Źle: tak nie działaif (13 <= wiek <= 19)
Dobrze: dwa porównaniaif (wiek >= 13 && wiek <= 19)
2.5

Instrukcja switch

switch porównuje jedną zmienną z listą konkretnych wartości. Na egzaminie przydaje się przy listach rozwijanych, np. przy wyborze rodzaju usługi albo rozmiaru.

Schemat do zapamiętania
switch (zmienna) {
  case wartosc1:
    ...
    break;
  case wartosc2:
    ...
    break;
  default:
    ...   // gdy nic nie pasuje
}

case – kod – break. Bez break program „przelatuje” do następnego case.

WybierzGdyPrzykład
switchporównujesz z konkretnymi wartościaminumer dnia 1–7, rozmiar „S”/„M”/„L”
if / else ifsprawdzasz zakresy albo łączysz warunkipunkty ≥ 90, wiek od 13 do 19

Kilka wartości może prowadzić do tego samego kodu. Wypisujesz wtedy kilka case jeden pod drugim:

Co wypisze ten kod? (Uwaga: "2" jest w cudzysłowie.)

let opcja = "2";
switch (opcja) {
  case 2:
    console.log("Dwa");
    break;
  default:
    console.log("Inna");
}
Część 2

Pętla for

2.6

Anatomia pętli for

Pętla powtarza ten sam kod wiele razy. Zamiast pisać 100 razy console.log, piszesz go raz i mówisz, ile razy ma się wykonać.

for ( let i = 0 ; i < 5 ; i++ ) { ciało }
1 · STARTtworzy licznik i; wykonuje się raz, na początku
2 · WARUNEKsprawdzany przed każdym obiegiem; false kończy pętlę
3 · CIAŁOkod w klamrach, który się powtarza
4 · KROKwykonuje się po każdym obiegu; i++ to i = i + 1
Schemat do zapamiętania

Skąd ; dokąd ; jak. Trzy części w nawiasie, oddzielone dwoma średnikami.

Krok po kroku: tak przeglądarka czyta pętlę

for (let i = 0; i < 3; i++) {
  console.log(i);
}
i–
Co się dziejeKliknij „Następny krok”, aby zacząć.
Konsola
krok 0 / 11

Kolejność zawsze jest ta sama: start → warunek → ciało → krok → warunek → ciało → krok → …, aż warunek da false.

Ile razy wykona się for (let i = 1; i <= 10; i++)?

Co się stanie z pętlą for (let i = 0; i < 5; i--)?

2.7

Wzorce pętli, które warto znać na pamięć

Wzorzec 1: sumowanie („skarbonka”)

Schemat do zapamiętania
let suma = 0;                 // 1. pusta skarbonka PRZED pętlą
for (...) {
  suma = suma + coś;          // 2. dorzucaj w każdym obiegu
}
console.log(suma);            // 3. wynik PO pętli

Wzorzec 2: pętla + if (filtrowanie i liczenie)

W ciele pętli możesz użyć if, żeby zająć się tylko wybranymi liczbami. Licznik działa jak suma, tylko zwiększasz go o 1.

Wzorzec 3: budowanie tekstu

Tekst też można „sumować” operatorem +=. Na egzaminie tak buduje się na przykład listę albo wiersz tabeli, a gotowy napis wstawia się potem na stronę.

Źle: przecinki zamiast średnikówfor (let i = 0, i < 5, i++)
Dobrzefor (let i = 0; i < 5; i++)
Źle: suma zeruje się w każdym obiegufor (let i = 1; i <= 5; i++) { let suma = 0; suma += i; }
Dobrze: skarbonka przed pętląlet suma = 0; for (let i = 1; i <= 5; i++) { suma += i; }
✎

Zadania

Kliknij Sprawdź, żeby przetestować kod. Sprawdzarka podmienia wartości zmiennych z pierwszych linijek i porównuje to, co wypisuje Twój program. Dlatego wynik nie może być wpisany na sztywno: program musi liczyć na podstawie zmiennych. Komunikaty wypisuj dokładnie w podanej postaci.

Z1. Ocena z testułatwe

Na podstawie zmiennej punkty (0–100) wypisz ocenę w postaci Ocena: 4. Progi: 0–39 → 1, 40–54 → 2, 55–69 → 3, 70–84 → 4, 85–94 → 5, 95–100 → 6.

Pokaż rozwiązanie
let punkty = 72;
let ocena;

if (punkty >= 95) {
  ocena = 6;
} else if (punkty >= 85) {
  ocena = 5;
} else if (punkty >= 70) {
  ocena = 4;
} else if (punkty >= 55) {
  ocena = 3;
} else if (punkty >= 40) {
  ocena = 2;
} else {
  ocena = 1;
}
console.log("Ocena: " + ocena);
Z2. Bilet do kinaśrednie

Bilet normalny kosztuje 25 zł. Osoby poniżej 18 lat lub od 65 lat płacą 18 zł. We wtorek (dzien === "wtorek") wszyscy płacą 15 zł. Wypisz Cena: 25 zł (z odpowiednią kwotą).

Pokaż rozwiązanie
let wiek = 30;
let dzien = "piątek";
let cena;

if (dzien === "wtorek") {
  cena = 15;
} else if (wiek < 18 || wiek >= 65) {
  cena = 18;
} else {
  cena = 25;
}
console.log("Cena: " + cena + " zł");
Z3. Pora rokułatwe

Użyj switch. Dla numeru miesiąca w zmiennej miesiac wypisz: 12, 1, 2 → Zima; 3, 4, 5 → Wiosna; 6, 7, 8 → Lato; 9, 10, 11 → Jesień; inna liczba → Błędny miesiąc.

Pokaż rozwiązanie
let miesiac = 10;

switch (miesiac) {
  case 12:
  case 1:
  case 2:
    console.log("Zima");
    break;
  case 3:
  case 4:
  case 5:
    console.log("Wiosna");
    break;
  case 6:
  case 7:
  case 8:
    console.log("Lato");
    break;
  case 9:
  case 10:
  case 11:
    console.log("Jesień");
    break;
  default:
    console.log("Błędny miesiąc");
}
Z4. Odliczaniełatwe

Pętlą for wypisz liczby od wartości start w dół do 0, co 2 (dla start = 10: 10, 8, 6, 4, 2, 0). Każdą liczbę w osobnej linii.

Pokaż rozwiązanie
let start = 10;

for (let i = start; i >= 0; i -= 2) {
  console.log(i);
}
Z5. Suma wielokrotności 3średnie

Oblicz sumę liczb od 1 do n, które dzielą się przez 3 bez reszty. Wypisz Suma: 63 (dla n = 20: 3+6+9+12+15+18 = 63).

Pokaż rozwiązanie
let n = 20;
let suma = 0;

for (let i = 1; i <= n; i++) {
  if (i % 3 === 0) {
    suma += i;
  }
}
console.log("Suma: " + suma);
Z6. Harmonogram rategzaminacyjne

Klient kupuje laptopa za kwota zł i spłaca go w raty równych ratach. Wypisz każdą ratę w osobnej linii: Rata 1: 300 zł, Rata 2: 300 zł… Jeśli liczba rat jest większa niż 12, wypisz tylko Maksymalnie 12 rat.

Pokaż rozwiązanie
let kwota = 1200;
let raty = 4;

if (raty > 12) {
  console.log("Maksymalnie 12 rat");
} else {
  let rata = kwota / raty;
  for (let i = 1; i <= raty; i++) {
    console.log("Rata " + i + ": " + rata + " zł");
  }
}
★

Ściąga z lekcji 2

if / else

if (warunek) {
  ...
} else {
  ...
}

Warunek w ( ), kod w { }. Po if (...) bez średnika.

else if

if (p >= 90) { ... }
else if (p >= 70) { ... }
else { ... }

Pierwszy pasujący wygrywa. Progi od największego.

Łączenie warunków

if (wiek >= 13 && wiek <= 19)
if (d === "sob" || d === "nd")

&& muszą oba, || wystarczy jeden.

switch

switch (x) {
  case 1:
  case 2: ...; break;
  default: ...
}

case – kod – break. Porównuje jak === ("2" ≠ 2).

Pętla for

for (let i = 0; i < 5; i++) {
  ...
}

Skąd ; dokąd ; jak. Start → warunek → ciało → krok.

Skarbonka i licznik

let suma = 0, ile = 0;
for (...) {
  suma += x;
  if (...) ile++;
}

Zmienne startowe przed pętlą, wynik po pętli.

Na następnej lekcji: tablice i przechodzenie po nich pętlą for.

Kontakt: mgzsp22@gmail.com

© 2026. Wszystkie prawa zastrzeżone.

error: Content is protected !!