Kontrolní otázky od AI

Týden 10/2026 (od 08.03.) – Doplňující otázky k obhajobě.

📁 Archiv-2026
Zpět

Kontrolní otázky od AI – Týden 10/2026 (od 08.03.)


Student: adeno

V původním souboru hraaa.py jsi u pohybu kostek kontroloval nárazy do stěn – mohl bys vysvětlit, proč v podmínce pro pravý a dolní okraj odečítáš cube_size, zatímco u levého a horního okraje porovnáváš souřadnice přímo s nulou, a jak by se graficky projevilo, kdybys toto odečítání v kódu vynechal?


Student: Bizon

V části kódu pro pohyb hráče používáš v cyklu for příkaz break – jaký má tento příkaz konkrétní dopad na ovládání postavy v momentě, kdy se hráč pokusí o diagonální pohyb stisknutím dvou kláves najednou (např. 'W' a 'D')?


Student: damykk

V souboru gamble.py ve funkci check_winnings používáš konstrukci else odsazenou přímo za cyklem for – mohl bys mi vysvětlit, za jaké situace se tento blok kódu provede a jak konkrétně jeho spuštění ovlivňuje příkaz break umístěný o pár řádků výše?


Student: drobek

V poslední verzi funkce hra máš na konci výpis „Prohrál jsi“, který není v žádné podmínce ani v bloku else – jak je tedy možné, že se tato zpráva nevypíše i v případě, že hráč vyhraje?


Student: Gajdy_wdym

V dokumentaci u výpočtu rebirth bodů uvádíš příklad, že za 1 000 skóre získá hráč 1 bod, ale v kódu máš podmínku pro vrácení nuly až do hranice 10 000 skóre – jaký to má konkrétní důvod a jak s tímto záměrným zpomalením začátku hry souvisí tvé rozhodnutí zvýšit „mega multiplier“ u pasivního gainu z hodnoty 5 na 8?


Student: ilou

Proč v části kódu pro odstraňování kostek používáš u funkce sorted parametr reverse=True a co přesně by se v seznamu kostky stalo, kdybys prvky mazal od nejmenšího indexu po největší?


Student: ILuvCode

V souboru Code.py máš v hlavní smyčce time.sleep(1) – pokud je automatické klikání zapnuté a já klávesu '8' jen krátce stisknu a hned pustím v momentě, kdy program zrovna vykonává tento sleep, dojde k okamžitému vypnutí klikání, nebo program toto stisknutí „přehlédne“ a proč?


Student: Jarmil

Mohl bys mi vysvětlit, proč tvůj had v aktuálním kódu při každém pohybu neustále roste a jakou konkrétní chybu by vyhodil Python ve chvíli, kdy by se funkce draw_objects pokusila vykreslit barvu GREEN, kterou jsi v definicích přejmenoval na zelená?


Student: Katana

Vysvětli mi, proč jsi vložil kompletní HTML kód kalkulačky do souboru README.md namísto index.html a jakým způsobem tvá funkce appendNumber() zapíše hodnotu do políčka display, když u něj máš v kódu nastavený atribut readonly?


Student: kejousek

Všiml jsem si, že v kódu definuješ třídu Snake s metodami move a change_direction, ale v hlavní herní smyčce pak pohyb hada řešíš pomocí proměnných snake_pos, dx a dy – mohl bys mi vysvětlit, jak je tato třída do běhu programu aktuálně zapojena a co se stane, když se pokusíš zavolat metodu Snake.insert(0, new_head) na konci souboru?


Student: kumor

V metodě add_reply v souboru help_forum.py voláš self.on_select(None) – proč tam musíš předávat ten None a co by se stalo, kdybys metodu zavolal bez jakéhokoliv argumentu?


Student: Litr

Proč v kódu pro pohyb sledující kostky provádíš výpočet normalizace a posun souřadnic dvakrát identicky za sebou a jaký to má vliv na její skutečnou rychlost oproti definované proměnné follower_speed?


Student: Luros

Ve funkci hledej_recepty přistupuješ v rámci ošetření chyb přímo k objektu vysledky, který není jejím parametrem – jak bys kód upravil, aby byla tato funkce nezávislá na grafickém rozhraní a dala se znovu použít i v čistě konzolové verzi programu?


Student: Maximistr

Při vykreslování mincí ve 3D pohledu používáš porovnání if wall_dist > dist – vysvětli mi, co přesně v tomto kontextu proměnná wall_dist představuje a jaký konkrétní vizuální problém by nastal, kdybys tuto podmínku z kódu odstranil?


Student: NahrazenoAI

V simulátoru skladu používáš v logickém větvení nejdříve podmínku s operátorem and pro kritický stav a poté elif s operátorem or pro varování – co přesně by se stalo s hlášením o kritickém stavu, kdybys tyto dvě podmínky (pořadí if a elif) v kódu prohodil?


Student: Nvm_Sorry

Proč při výpočtu pohybu dělíš hodnoty dx a dy proměnnou distance a jak by se změnilo chování kostky, kdybys toto dělení vynechal?


Student: Paprikon34

Vysvětli mi, proč v případě neomezeného FPS nastavuješ proměnnou self.current_fps na 0 a jakým způsobem pak funkce self.clock.get_fps() dokáže spočítat a zobrazit reálnou rychlost běhu, když jí v parametru tick žádný limit neudáváš?


Student: Přezdívka

V rámci definice seznamu all_debuffs používáš u některých prvků (např. 'Speed x2') anonymní funkci lambda, zatímco u jiných (např. 'Foggy vision') předáváš jen samotný název funkce – mohl bys mi vysvětlit, proč je tento rozdíl v zápisu nutný a co by se stalo v momentě spuštění hry, kdybys u té rychlosti místo lambdy napsal rovnou apply_speed(2, state)?


Student: TheReader

V rámci stavu saves používáš funkci sorted(saves.keys()) jak pro vykreslování seznamu, tak pro detekci kliknutí myší – co přesně by se v ovládání hry stalo, kdybys funkci sorted() na jednom z těchto dvou míst vynechal, a proč je tato synchronizace pro správné načítání pozic nezbytná?


Student: Titan

V převodníku jednotek tvůj vzorec pro výpočet proměnné faktor vrátí při převodu z kilometrů (km) na metry (m) hodnotu 0.001 – dokážeš vysvětlit, proč ti vyšlo právě toto číslo a jaký konkrétní vstup od uživatele v programu chybí, aby mohl uživatel skutečně převést např. 5 kilometrů na metry?


Student: virtualAI

Ve hře Snake máš funkci set_mode, která mění CELL_SIZE a následně přepočítává GRID_WIDTH a GRID_HEIGHT. Jak přesně by se změnilo chování detekce kolize se stěnami, kdybys tyto dvě proměnné neaktualizoval a nechal je v původních hodnotách z režimu "Normal"?


Student: Vojcinn

V programu 02_hadej_cislo.py se po úspěšném uhodnutí čísla vypíšou do konzole dvě různé zprávy o výhře – dokážeš vysvětlit, proč k tomuto zdvojení dochází a které konkrétní řádky kódu jsou za to zodpovědné?


Student: Vozuch

Všiml jsem si, že v poslední verzi importuješ funkci random, ale rychlost míčku po stisknutí mezerníku nastavuješ vždy napevno na hodnotu 5 – mohl bys mi vysvětlit, v jaké části kódu jsi tuto funkci původně plánoval využít a jak přesně by to mělo ovlivnit chování míčku při startu nového kola?