Souhrnná úloha – Generátor seznamu čisel

Site: Moodle ZČU
Course: Sada úloh pro procvičení v předmětu KVD/PGM1P (BP Vítek Dolný)
Book: Souhrnná úloha – Generátor seznamu čisel
Printed by: Guest user
Date: Sunday, 18 October 2026, 4:55 AM

Table of contents

Úloha

Zadání (kontext úlohy):

Vytvoř „generátor seznamu čísel“. Uživatel zadá, kolik položek chce vypsat. Program hodnotu ověří (musí být 1–150) a vygeneruje očíslovaný seznam 1…N. Následně umí přeskočit násobky 3 a může předčasně skončit na zadaném čísle.


Cíl úlohy:

Procvičit do...while pro opakované zadávání, for pro průchod sekvencí, použití continue a break, práci s čítačem a podmínkami s explicitním porovnáním.


Vstupní podmínky:
  • Pracuj se soubory index.html a script.js.

  • Hodnota N musí být celé číslo v intervalu 1–150.

  • Volitelně může uživatel zadat „zastav na čísle“ (pokud není platné, ignoruj).


Požadovaný výstup:
  1. Pomocí do...while opakovaně žádej N, dokud není platné (1–150).

  2. Vykresli do <ul id="seznam"> čísla 1…N pomocí for.

    • Pokud je číslo násobkem 3, položku nepřidávej (continue).

    • Pokud se číslo rovná „zastav na čísle“, generování ukonči (break).

  3. Pod seznam napiš souhrn ve tvaru: „Vypsáno: X položek z plánovaných N.“

  4. Používej pouze let/const, bez šipkových funkcí a bez ternárního operátoru.

  5. V podmínkách porovnávej výslovně (if (podminka == true) / if (podminka == false)).


Doplňující pokyny:
  • Pro čísla používej Number() a kontrolu isNaN(...).

  • Čítač vypsaných položek udržuj v samostatné proměnné (např. pocet).

  • Do komentářů můžeš uvést zkrácené ekvivalenty (např. if (!isValid)), ale v kódu používej plné porovnání.

Řešení úlohy

Co je zde splněno

  • Použití cyklu do...while pro opakované zadávání, dokud není hodnota v intervalu 1–150.

  • Využití for pro generování sekvence 1…N.

  • Přeskočení násobků 3 pomocí continue.

  • Ukončení cyklu na požadovaném čísle pomocí break.

  • Počítání skutečně vypsaných položek v proměnné pocet.

  • Zobrazení výsledků v <ul id="seznam"> a souhrnu pod ním.

  • Ošetření všech neplatných vstupů (isNaN() a kontrola intervalu).

  • Použity pouze let a const, žádné šipkové funkce ani ternární operátory.

  • Všechna porovnání jsou explicitní (if (podminka == true) apod.).