Kontrolní otázky od AI

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

📁 Archiv-2026
Zpět

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


Student: Bizon

V rámci tvé nové logiky pohybu, co se přesně stane s původní hodnotou v matici board[r][c] ve chvíli, kdy tam hráč přesune svou figurku, a jak tvůj kód v této fázi ošetřuje situaci, kdy by chtěl hráč táhnout na pole obsazené svou vlastní jinou figurkou?


Student: damykk

Co se v tvém aktuálním kódu stane s XP a levelem hrdiny v případě, že hrdina získá jednorázově 500 XP při limitu 100, a jakou konkrétní změnu v logice metody ziskej_xp bys musel udělat, aby hrdina správně postoupil o více úrovní najednou?


Student: drobek

Proč v tabulce v README.md uvádíš u piškvorek číslo 5 a zcela v ní vynecháváš číslo 2, když ve skutečnosti máš v repozitáři složku 02_todolist, ale složky pro projekty 4 a 5 tam zatím vůbec nemáš?


Student: Gajdy_wdym

V rámci „zkrácení kódu pro lepší uspořádání“ jsi smazal rozsáhlou část logiky obsluhující if rebirth_open: včetně slovníku upgrade_positions a vykreslování spojovacích čar – mohl bys mi vysvětlit, do jaké funkce jsi tuto logiku přesunul, nebo jak nyní program bez těchto souřadnic určuje, kam má tlačítka jednotlivých upgradů v menu vykreslit?


Student: ilou

V metodě update_movement u třídy Player používáš v rámci setHpr jako první parametr self.model – k čemu přesně tento zápis v Panda3D slouží a jak by se změnil vizuální efekt kutálení kuličky, kdybys tento první parametr vynechal?


Student: Jarmil

Proč bylo nutné věnovat poslední dva commity pouze opravě formátování tabulky v README.md a jakým konkrétním způsobem ovlivňuje toto uvedené datum zahájení funkčnost tvého skriptu v souboru Snake_hra_projekt.py?


Student: Katana

V projektu Sudoku ve funkci is_valid máš u všech tří typů kontrol (řádek, sloupec, blok) podmínku, která vylučuje kontrolu aktuální pozice (např. pos[1] != i nebo (i, j) != pos) – mohl bys vysvětlit, zda jsou tyto podmínky ve tvém kódu skutečně potřeba, když uvážíš, v jakém pořadí v hlavní herní smyčce provádíš validaci a samotný zápis čísla do pole?


Student: kejousek

V obsluze události pro stisk klávesy Enter používáš podmínku if red and not clicked – co přesně by se v programu stalo, kdybys podmínku if red vynechal a hráč by stiskl Enter v momentě, kdy je obrazovka ještě černá?


Student: Litr

Vysvětli mi, proč ve funkci _transform nejprve odečítáš hodnoty pivot_x a pivot_y od souřadnic bodů předtím, než zavoláš rotate_point, a jak by se změnila animace seku, kdybys tento krok vynechal?


Student: Luros

Ve funkci aktualizuj_tlacitka_odkazu používáš v cyklu přiřazení command=lambda o=odkaz: zkopiruj_odkaz(o) – proč je tam to „o=odkaz“ a jak by se aplikace chovala, kdybys tam napsal jen prosté lambda: zkopiruj_odkaz(odkaz)?


Student: Maximistr

Mohl bys vysvětlit, proč v bloku pro detekci barvy blank provádíš úkrok myší o 10 pixelů doleva a co konkrétně v grafice Minesweeperu reprezentuje barva (255, 255, 255), kterou se tam snažíš zachytit?


Student: Mendys

V dokumentaci uvádíš, že pro efektivní matematické výpočty a 3D náhled využíváš knihovnu numpy, kterou jsi ale v rámci posledního „cleanupu“ z hlavního souboru Ppmain.py odstranil – mohl bys vysvětlit, proč už tam není potřeba a co přesně se stalo s tou částí kódu, která ji původně využívala?


Student: NahrazenoAI

Vysvětli mi, proč v hlavní smyčce voláš funkci vymaz_obrazovku() jako úplně první krok ještě před získáním času a jak by se vizuálně změnil průběh programu, kdybys toto smazání přesunul až na samotný konec smyčky za příkaz time.sleep(1)?


Student: Nvm_Sorry

Všiml jsem si, že jsi v kódu nově rozdělil výpočet pohybu a kolizí zvlášť na osu X a osu Y – jaký konkrétní problém s ovládáním by nastal, kdyby se obě osy kontrolovaly současně, a jak toto rozdělení ovlivňuje chování postavy při pohybu těsně u zdi?


Student: Paprikon34

Vysvětli, proč se v rekurzivní funkci dig_tunnel skáče o dvě políčka namísto jednoho a co přesně by se s generovaným bludištěm stalo, kdybychom vynechali ten řádek kódu, který pomocí celočíselného dělení (// 2) upravuje políčko „mezi“ těmito dvěma body?


Student: Přezdívka

V popisu mechaniky útoku uvádíš, že meč zasáhne všechny nepřátele ve 180° výseči kolem směru myši – jakým konkrétním matematickým způsobem v kódu kontroluješ, že se nepřítel nachází právě v tomto správném úhlu, a jak jsi zajistil, aby útok nezasáhl i nepřátele, kteří jsou sice v dosahu (radius), ale stojí za zády hráče?


Student: TheReader

V metodě update_resolution_options u FFmpeg převodníku filtruješ seznam nabízených rozlišení pomocí podmínky preset_max <= orig_max – mohl bys vysvětlit, proč tam porovnáváš právě největší rozměr videa místo kontroly šířky i výšky zvlášť a jaký vliv to má na uživatelskou nabídku v případě, že do programu vložíš vertikální video (např. z mobilu)?


Student: Titan

V metodě handle_command jsi u příkazů jako „weather“ nebo „search“ změnil způsob získávání parametrů tak, že nově používáš original_text.split() místo původního text.split() – jaký to má praktický význam pro výsledek, který uživatel uvidí, a co přesně by se stalo, kdybys tam nechal tu původní proměnnou?


Student: virtualAI

Všiml jsem si, že v metodě uloz_do_historie vkládáš nové záznamy do GUI na začátek (index 0.0), zatímco do souboru historie.txt se přes open(..., "a") připisují na konec – jak se tato nekonzistence v řazení projeví v seznamu historie po restartu aplikace?


Student: Vojcinn

V nákupním systému (funkce shop) používáš k výpočtu ceny zbraně index jejího názvu v seznamu klíčů – co by se stalo s cenami již existujících zbraní, kdybys do slovníku WEAPONS přidal novou zbraň hned na první místo?


Student: Vozuch

V souboru kalkulacka.py jsi v posledním commitu odstranil řádek tlacitko.bind("<Button-1>", lambda e, t=text: vstup.insert(tk.END, t)) – jak by se změnilo chování tlačítek pro výpočet (=) a smazání (C), kdybys tento řádek v kódu ponechal?