Test reakční doby
Zadání
Vytvořte hru pro DT-Box, která vyzkouší hráčovy reflexy tím, že po náhodné době po spuštění rozsvítí displej a hráč musí co nejrychleji stisknout tlačítko. Následně hráč dostane výsledek v podobě hodnoty reprezentující dobu, kterou hráči trvalo zareagovat. Pokud hráč stiskne tlačítko před rozsvícením, je to neplatný pokus.
Rozšíření
- Na start hry a pro vyhodnocení přidejte jednoduchou animaci, kdy například výsledek zabliká.
- Změňte program tak, aby byl pro dva hráče, kteří budou soutěžit a program ukáže vítěze.
Evokace
Představte si situaci, kdy potřebujete co nejrychleji reagovat. Například při řízení.
- Kde jinde jsou rychlé reakční schopnosti nezbytné? (sport, riziková povolání)
- Kdy jste se naposledy ocitli v situaci, kdy bylo potřeba rychlé reakce?
Uvědomění
- Jaké periferie knihovny dtbox budeme potřebovat?
- Button, Display
- Jaké datové reprezentace budeme potřebovat?
- logické hodnoty pro správnou funkčnost obsluhy tlačítek
- čas
Jak získám náhodnou hodnotu ze zadaného rozmezí?
random.uniform(2.2, 6.6)
Jak získám absolutní hodnotu?
abs(-3)
Jaká bude hlavní struktura kódu?
- konstanta náhodného času
- proměnná času počátku
- obsluha tlačítek (start a konec)
- smyčka zajišťující, že se displej rozsvítí ve správnou chvíli
Jaké jsou rizikové stavy?
- stisknutí tlačítka před rozsvícením, je potřeba diskvalifikovat
Reflexe
Co se vám na řešení líbí/nelíbí?
Kde si dokážete představit použití vašeho řešení? (kontrola s odpověďmi u evokace)
Jak byste pozměnili projekt, aby byl lépe použitelný v praxi?
Které části implementace byly nejnáročnější?
Co byste poradili někomu, kdo se chystá vytvořit podobný projekt?