Souhrnná úloha – Knihovní asistent
Úloha
Zadání (kontext úlohy):
Vytvoř malý program „Knihovní asistent“, který umožní zpracovat údaje o knize. Pomocí několika funkcí ověří správnost dat, převede délku čtení na hodiny a minuty a vygeneruje krátké shrnutí pro uživatele.
Cíl úlohy:
Procvičit vytváření a volání funkcí, práci s parametry a návratovými hodnotami, přehledné rozdělení kódu do samostatných částí a pochopení rozdílu mezi deklarací a výrazem funkce.
Vstupní podmínky:
-
Student pracuje se soubory
index.htmlascript.js. -
Data se získávají z uživatelských vstupů pomocí
prompt(). -
Program má obsahovat alespoň tři vlastní funkce:
-
overitNazev(kniha)– zkontroluje, zda název knihy není prázdný. -
prevodCasu(minuty)– převede dobu čtení na hodiny a minuty. -
vytvorShrnuti(nazev, autor, hodiny, minuty)– vrátí formátovaný text s výsledkem.
-
Požadovaný výstup:
-
Načti od uživatele název knihy, autora a odhadovaný čas čtení v minutách.
-
Pomocí funkce
overitNazev()ověř, že název není prázdný. -
Pomocí
prevodCasu()vypočítej odpovídající hodiny a minuty. -
Pomocí
vytvorShrnuti()sestav text ve tvaru např.:
„Kniha Hobit od autora Tolkien zabere přibližně 6 hodin a 15 minut čtení.“ -
Výsledek vypiš do konzole i do stránky do
<div id="vystup">.
Doplňující pokyny:
-
Používej pouze
letaconst. -
Nepoužívej šipkové funkce ani ternární operátory.
-
Funkce musí mít návratovou hodnotu (
return). -
Ošetři vstup: pokud uživatel nezadá čas nebo zadá neplatné číslo, použij výchozí hodnotu 0.
-
Funkce deklaruj i přiřaď pomocí výrazu, aby bylo vidět rozdíl v pořadí deklarací (hoisting).