Úloha 1 – Cyklus for v praxi

Site: Moodle ZČU
Course: Sada úloh pro procvičení v předmětu KVD/PGM1P (BP Vítek Dolný)
Book: Úloha 1 – Cyklus for v praxi
Printed by: Guest user
Date: Sunday, 18 October 2026, 9:59 AM

Ú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). Typicky i < 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 n prvků tedy procházíme i = 0 až 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 += 2 pro 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 je i < 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ě. U n prvků pole běžte i = 0; i < n; i++.

  • Přepis proměnných: Proměnná i by 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 for má tři části: inicializaci, podmínku, iteraci.

  • Běžný idiom pro n opakování je for (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.

Úloha

Zadání (kontext úlohy):

Tvým úkolem je napsat program, který vypíše malou násobilku pro jedno číslo. Cyklus for se postará o opakování – vždy vygeneruje nový řádek s výsledkem.


Cíl úlohy:

Procvičit použití cyklu for se všemi třemi částmi (inicializace, podmínka, iterace) a vyhnout se „o jedno“ chybě.


Vstupní podmínky:
  • Student pracuje pouze s nově vytvořeným souborem script.js.

  • Do proměnné cislo ulož libovolné celé číslo (např. 7).

  • Cyklus má projít čísla 1 až 10 včetně.


Požadovaný výstup:
  • Program zobrazí 10 výsledků ve tvaru:
    "7 × 1 = 7", "7 × 2 = 14", … až "7 × 10 = 70".

  • Každý výsledek zobraz pomocí console.log().


Doplňující pokyny:
  • Používej klasický tvar for (let i = 1; i <= 10; i++).

  • Dej pozor na rozdíl < vs. <=. Pokud bys použil < 10, cyklus skončí o jeden krok dřív.

  • Vyzkoušej změnit hodnotu cislo a zkontroluj, že program funguje i pro jiná čísla.

Řešení úlohy

Co je zde splněno

  • Proměnná cislo obsahuje základ násobilky.

  • Použit klasický cyklus for (let i = 1; i <= 10; i++).

  • Každý průchod cyklem vypíše výsledek násobení do konzole.

  • Díky <= 10 cyklus vypíše přesně 10 výsledků, ne o jeden méně.

Poznámky

  • Pokud by bylo v podmínce i < 10, poslední výsledek by chyběl (7 × 10 = 70).

  • Doporučujeme vyzkoušet různé hodnoty proměnné cislo, např. 5, 12, aby bylo vidět, že program funguje obecně.