Úloha 1 – Cyklus for v praxi
Úvod do úlohy
Cyklus for patří mezi základní nástroje v programování: umožňuje opakovaně spustit stejný blok kódu přesně tolikrát, kolikrát potřebujete. V praxi s ním projíždíme položky pole, generujeme HTML prvky, počítáme součty nebo provádíme opakované kontroly. V této části se naučíte přesně rozumět třem částem hlavičky for – inicializaci, podmínce a iteraci – a bezpečně se vyhnout nekonečné smyčce i typickým „o jedno“ chybám.
Teorie a principy
-
Základní tvar cyklu
-
Inicializace – nejčastěji nastavíme počítadlo:
let i = 0; -
Podmínka – říká, kdy cyklus pokračuje. Běží se, pokud je podmínka pravdivá (
true). Typickyi < n. -
Iterace – změna počítadla po každém průchodu, obvykle
i++(zvýšení o 1).
-
-
Index od nuly: V JavaScriptu má většina kolekcí (např. pole) prvky od indexu 0. Pro
nprvků tedy procházímei = 0aži < n. -
Vyhnutí se nekonečné smyčce: Zajistěte, aby se podmínka jednou stala nepravdivou (
false). Počítadlo se musí při každé iteraci měnit správným směrem. -
Čitelnost: Pro jasný průchod „0 až n-1“ preferujte
i = 0; i < n; i++. Složitější změny kroku dělejte vědomě (např.i += 2pro sudé indexy).
Praktické příklady kódu
1) Pět průchodů: 0 až 4 (konzolový výstup)
2) Součet čísel 1..n (kontrolovaný počet opakování)
3) Generování HTML prvků (praktické použití na stránce)
4) Vyhnutí se nekonečné smyčce – špatně vs. správně
Typické chyby / záludnosti
-
Zapomenutá iterace (
i++) → nekonečná smyčka. -
Špatný směr změny (např. snižujete
i--, ale podmínka jei < n) → cyklus se nikdy nezastaví nebo se nespustí. -
„O jedno“ chyba: Zaměněné
<=a<vede k o jeden průchod navíc nebo méně. Unprvků pole běžtei = 0; i < n; i++. -
Přepis proměnných: Proměnná
iby měla být lokální (let i = ...) jen pro daný cyklus, aby neovlivnila jiný kód. -
Práce s délkou pole: Používejte
i < pole.length(ne<=). V opačném případě sáhnete na neexistující prvek.
Shrnutí
-
Cyklus
formá tři části: inicializaci, podmínku, iteraci. -
Běžný idiom pro
nopakování jefor (let i = 0; i < n; i++) { ... }. -
Dbejte na správný směr změny počítadla a na konec cyklu → vyhnete se nekonečné smyčce.
-
Pro průchod polem použijte indexování od 0 do length − 1.
-
Minimalizujte „o jedno“ chyby: vědomě volte
<vs.<=podle potřeby.