Najdi chybu ve vývojovém diagramu
Deset diagramů algoritmů pro micro:bit. Všechny jsou nakreslené správně, ale algoritmus v nich nedělá to, co má. V každém je schovaná logická chyba. Najdi ji, vysvětli, proč se projeví, a oprav ji.
- Přečti zadání a zjisti, co má algoritmus dělat.
- Vyzkoušej ho s hodnotami z řádku Vyzkoušej. Prstem nebo do tabulky: kudy půjdeš, jaké hodnoty mají proměnné.
- Najdi místo, kde se výsledek rozchází se zadáním.
- Napiš, v čem je chyba a jak ji opravíš. Nápovědu otevři až po pokusu.
Teplo nebo zima
★☆☆Micro:bit změří teplotu. Když je aspoň 25 °C, má zobrazit ‚Teplo‘, jinak ‚Zima‘. Po vyzkoušení ukazuje opak.
Vyzkoušej: Zkus teplotu 30 °C a 10 °C.
Nápověda
Projdi diagram s teplotou 30 °C a sleduj, kam se dostaneš.
Sudé nebo liché
★☆☆Algoritmus načte číslo n a zobrazí ‚sudé‘ nebo ‚liché‘. Pro některá čísla se ale nezobrazí nic.
Vyzkoušej: Zkus n = 8 a n = 7.
Nápověda
Kolik výstupů má rozhodovací kosočtverec? A jak se dostane lichá hodnota dál?
Součet 1 až 10
★☆☆Algoritmus má sečíst čísla 1 až 10 a zobrazit 55. Spuštěný program ale nikdy neskončí.
Vyzkoušej: Trasuj do tabulky hodnoty i a součet pro prvních pět průchodů.
Nápověda
Co se stane s hodnotou i po každém průchodu cyklem?
Čísla 1 až 5
★★☆Algoritmus má zobrazit čísla 1, 2, 3, 4, 5. Zobrazí jen čtyři.
Vyzkoušej: Trasuj do tabulky i a výstup, dokud cyklus neskončí.
Nápověda
Jaká hodnota i je poslední, při které podmínka ještě platí?
Zámek s PINem
★★☆Zámek se má otevřít, jen když je PIN správný. Teď se otevře i při špatném PINu.
Vyzkoušej: Trasuj s PINem 1234 a s PINem 9999.
Nápověda
Kdy přesně se provede krok Otevři zámek? Záleží na tom, co zadal uživatel?
Zima, teplo, horko
★★☆Micro:bit zobrazí ‚Horko‘ nad 30 °C, ‚Teplo‘ nad 20 °C a jinak ‚Zima‘. Při 35 °C ale ukazuje ‚Teplo‘ a ‚Horko‘ se nezobrazí nikdy.
Vyzkoušej: Trasuj teploty 35 °C, 25 °C a 10 °C.
Nápověda
Zkus teplotu 35 °C. Která podmínka se vyhodnotí jako první a kam to vede?
Alarm mimo rozsah
★★☆Micro:bit má spustit ALARM, když je teplota mimo rozsah 10 až 28 °C. Alarm se ale nespustí nikdy.
Vyzkoušej: Zkus t = 5, t = 20 a t = 35.
Nápověda
Zkus najít číslo, pro které platí obě části podmínky najednou.
Průměr čtyř měření
★★★Micro:bit čtyřikrát změří teplotu a zobrazí průměr. Průměr ale vychází vždy jen jako čtvrtina posledního měření.
Vyzkoušej: Měření 20, 22, 24, 26. Správný průměr je 23. Co vyjde v diagramu?
Nápověda
Trasuj hodnotu součtu po každém průchodu. Co s ní dělá druhý krok cyklu?
Největší hodnota
★★★Seznam má 5 naměřených hodnot. Algoritmus má zobrazit největší. Pro seznam 12, 7, 25, 3, 18 má vyjít 25.
Vyzkoušej: Trasuj s tímto seznamem. Co se zobrazí?
Nápověda
Proč se zobrazí 3? Co by se muselo změnit, aby se zobrazila 25?
Hlídač s podprogramem
★★★Hlavní program stále měří teplotu. Když je nad 28 °C, zavolá podprogram Alarm. Po prvním alarmu ale program už neměří a alarm pípá pořád dokola.
Vyzkoušej: Trasuj podprogram Alarm do konce. Kam se dostaneš po jeho posledním kroku?
Nápověda
Co by měl udělat podprogram, až dokončí svou práci? A co dělá volání sebe sama?