Detail reportu: Vozuch

Týden 14/2026 (od 05.04.) – Výsledky AI analýzy a hodnocení odevzdaného kódu.

📁 Archiv-2026
Zpět

Vozuch

Období: Týden 14/2026 (od 05.04.) Skupina: tria URL: https://github.com/tomasskudrzyk-dev/Vozuch.git

1. Splnění základních podmínek

Podmínka Status
Alespoň 3 commity v daném týdnu ✅ SPLNĚNO
Rozestup alespoň 12h mezi 3 commity ✅ SPLNĚNO
Projektová dokumentace (README, projekt.md) ❌ NESPLNĚNO

2. Přehled commitů

3. Výsledky AI analýzy kódu

Metrika Hodnota
Celkové body (AI) 15 / 20 b. (75%)
Náročnost projektu (Index) 3
Počet commitů 3
Změněné soubory 2
Počet přid./odeb. řádků kódu 82

Komentář a zpětná vazba od AI

Dobrý den, posílám ti zhodnocení tvé práce na projektu za uplynulý týden. Udělal jsi velký kus práce na kvízové hře, zejména v oblasti interakce s uživatelem a vizualizace postupu.

1. Smysluplnost popisů u commitů [3 body]:

Splněno. Commity jsou jasné, popisují konkrétní změny (loading bar, skóre, oprava výběru) a odpovídají tomu, co se v kódu skutečně dělo.

2. Smysluplnost komentářů v kódu [5 bodů]:

V kódu se orientuješ dobře a komentáře používáš k popisu klíčových bloků (např. čas vyhodnocení, loading bar, výběr myší). Jsou psány srozumitelně v češtině. Drobný bod strhávám za to, že některé komentáře jsou až příliš triviální (např. #vytvoření skóre u proměnné skore), ale jako celek je to velmi dobré.

3. Kvalita a srozumitelnost dokumentace a struktura repozitáře [1 bod]:

README.md jsi vzorně aktualizoval o nové ovládání a cíle hry, což chválím. Vytýkám však porušení pravidla o struktuře repozitáře: Soubory quiz.py, snake_game.py a ping_pong.py máš naházené v jedné společné složce /Projekty/. Podle metodiky musí mít každý projekt svou vlastní samostatnou složku (např. /Projekty/Quiz/quiz.py). Tímto se tvůj repozitář stává nepřehledným, pokud bys chtěl k jednotlivým hrám přidávat například obrázky nebo zvuky.

4. Logika řešení a přemýšlení studenta v Pythonu [6 bodů]:

Progrese je vidět, zejména v použití pygame.time.get_ticks() pro vytvoření časové prodlevy a v práci s pygame.Rect pro detekci kliknutí myší. To jsou středně pokročilé techniky.

V logice se však objevilo několik chyb a neefektivit: * Závažná chyba v přičítání bodů: V souboru quiz.py máš v hlavní smyčce blok: if vysledek is True: skore += 1. zde je chyba. Protože tato podmínka platí po celou dobu 2 sekund, kdy se čeká na další otázku, program přičte 1 bod v každém průchodu smyčkou (cca 60x za sekundu). Hráč tak za jednu správnou odpověď dostane stovky bodů místo jednoho. Body by se měly přičítat pouze jednou v momentě kliknutí (což už v kódu jednou máš v sekci MOUSEBUTTONDOWN). * Redundance: Dvakrát kontroluješ if skore >= max_skore a dvakrát vykresluješ nápis o vítězství, což je zbytečné. * Otázka na prezidenta: V seznamu otázek jsi změnil správnou odpověď u Joe Bidena na index 1 (Donald Trump). zde je chyba, pokud má být odpověď fakticky správná k aktuálnímu datu (2026), ale to je spíše faktická poznámka. * Vykreslování: V cyklu pro odpovědi počítáš rect dvakrát za sebou se stejnými parametry, což zpomaluje kód.


Celkem získáno bodů: [15 / 75%] ze 20 možných

Slovní hodnocení: Práce s knihovnou Pygame ti jde skvěle a tvůj kód začíná být interaktivní a vizuálně zajímavý. Dávej si ale pozor na to, kde v kódu provádíš logické operace (jako je přičítání skóre). Pokud operaci umístíš volně do herní smyčky, provede se mnohokrát za sekundu. Příště se zaměř na to, aby se body přičítaly pouze při události (eventu) kliknutí. Také si prosím ukliď projekty do samostatných složek.

DIFFICULTY_INDEX: [3]

Kontrolní otázka k obhajobě

V souboru quiz.py máš v hlavní smyčce řádek if vysledek is True: skore += 1 – mohl bys mi vysvětlit, proč toto umístění způsobuje, že skóre během dvousekundové pauzy před další otázkou nekontrolovaně narůstá o stovky bodů, a jak bys tento logický problém opravil?