Úloha 3 – Kombinace if/else a switch pro vyhodnocení výsledku
Úloha
Zadání (kontext úlohy):
Máš program, který hodnotí výsledek testu. Nejprve musí zjistit, zda je vstup číslo nebo řetězec (protože může přijít z formuláře). Potom podle bodů určí známku.
Cíl úlohy:
Procvičit rozdíl mezi volným porovnáváním (==) a striktním (===), kombinaci if/else a switch, a pochopit, proč je někdy potřeba kontrolovat typ.
Vstupní podmínky:
-
Student pracuje pouze s nově vytvořeným souborem
script.js. -
Do proměnné
bodyulož hodnotu"90"(řetězec).
Požadovaný výstup:
-
Pomocí
if/elseprogram zjistí, jestlibodyodpovídá číslu 90 i když je to řetězec:-
Pokud
body == 90→alert("Shoda díky == (string se převede na číslo)"). -
Pokud
body === 90→alert("Shoda jen pokud je to skutečné číslo").
-
-
Poté použij
switch (body)a rozhodni známku:-
"100"→alert("Perfektní – známka 1") -
"90"→alert("Výborně – známka 1") -
"75"→alert("Chvalitebně – známka 2") -
"60"→alert("Dobře – známka 3") -
default→alert("Výsledek není v tabulce")
-
Doplňující pokyny:
-
Všimni si, že
switchrozpozná jen řetězcové hodnoty, pokud je vstup"90". -
Zkus změnit
bodyz"90"na číslo90a sleduj rozdíl. -
Přidej do kódu oba testy (
==a===), aby byl kontrast jasně vidět.