Úloha 1 – Víceúrovňová podmínka s if–else if–else
| Sitio: | Moodle ZČU |
| Curso: | Sada úloh pro procvičení v předmětu KVD/PGM1P (BP Vítek Dolný) |
| Libro: | Úloha 1 – Víceúrovňová podmínka s if–else if–else |
| Imprimido por: | Nepřihlášený host |
| Día: | domingo, 18 de octubre de 2026, 07:34 |
Úvod do úlohy
Podmínky jsou jedním ze základních stavebních kamenů programování. Díky nim může program reagovat na různé situace a rozhodovat se, jaký blok kódu spustí. V praxi se s podmínkami setkáte neustále – například když webová stránka kontroluje, zda uživatel vyplnil povinné pole, nebo když aplikace zobrazí jinou zprávu v závislosti na věku uživatele. Bez podmínek by všechny programy běžely stále stejně, bez ohledu na vstupní data, a to by nebylo příliš užitečné.
Teorie a principy
Základní konstrukcí v JavaScriptu je if–else.
-
Klíčové slovo
ifse používá k určení podmínky. -
V kulatých závorkách se nachází logický výraz, který se vyhodnotí na
true(pravda) nebofalse(nepravda). -
Pokud je výraz
true, vykoná se kód uvnitř složených závorek{ }. -
Část
elseje volitelná a spustí se tehdy, když podmínka vifnebyla splněna. Pokud ji nepoužijete, program se jednoduše přesune dál a nic se nestane.
Důležité je vědět, že logický výraz nemusí být jen jednoduché porovnání. Může zahrnovat číselné i textové hodnoty, různé operátory (==, >, <, !=) a výsledkem vždy bude pravda nebo nepravda.
Praktické příklady kódu
1. Jednoduchý if bez else:
2. If–else konstrukce:
Typické chyby / záludnosti
-
Chybějící závorky: studenti občas vynechají
{ }, což může vést k nečekanému chování, hlavně když má být spuštěno více příkazů. -
Záměna
=a==: znak=slouží k přiřazení, zatímco==porovnává hodnoty. Pokud napíšeteif (vek = 18), nebudete nic porovnávat, ale přepíšete proměnnouvekna 18. -
Else není povinný: někteří studenti se domnívají, že bez
elseprogram spadne. Není to pravda – částelseje jen možnost, nikoli povinnost.
Shrnutí
-
Podmínky umožňují programu reagovat na různé situace.
-
Základní syntaxe:
-
Část
elsenení povinná – když chybí a podmínka není splněna, program prostě pokračuje dál. -
Dávejte si pozor na závorky a rozdíl mezi
=(přiřazení) a==(porovnání).
Úloha
Zadání (kontext úlohy):
Tvůj program bude rozhodovat, jaký typ obsahu se uživateli zobrazí podle jeho věku. Nejde jen o to, jestli má přístup, ale také o to, zda dostane doporučení pro dětskou, studentskou nebo dospělou verzi webu.
Cíl úlohy:
Procvičit si podmínky if–else if–else a porovnávání číselných hodnot.
Vstupní podmínky:
-
Student pracuje pouze s nově vytvořeným souborem
script.js. -
Do proměnné
vekulož nějakou číselnou hodnotu.
Požadovaný výstup:
-
Pokud je věk menší než 13 →
alert("Zobrazuji dětskou verzi webu.") -
Pokud je věk 13 až 17 →
alert("Zobrazuji studentskou verzi webu.") -
Pokud je věk 18 a více →
alert("Zobrazuji obsah pro dospělé.")
Doplňující pokyny:
-
Dávej pozor, aby se podmínky nepřekrývaly.
-
Nejprve otestuj nejnižší věk a pak pokračuj k vyšším.
-
Pamatuj, že
else ifaelsejsou dobrovolné, ale pomáhají udržet kód přehledný.
Řešení úlohy
Co je zde splněno
-
Do proměnné
vekje uložen číselný údaj. -
Použity podmínky
if,else if,else. -
Ošetřeny všechny tři věkové skupiny bez překryvu.
-
Program vypisuje správnou hlášku pomocí
alert().
Vylepšení oproti začátečnické verzi
-
Použita proměnná
zprava, která drží výsledný text, což zpřehledňuje kód a umožňuje jej později snadno rozšířit. -
V druhé podmínce je použito jen
vek <= 17, protože logicky platí, že předchozí větev už vyloučila menší věky. -
Použití
constpro neměnný věk a přehlednější struktura.
Poznámky
Při testování podmínek je důležité začínat od nejnižší hranice a postupovat nahoru.
Díky
else ifaelsese vykoná vždy jen jedna větev.