no | obsah | tema |
---|---|---|
cv 01 | REPL, Jednoduchá aplikace pro analýzu databáze osob | csv; soubor |
cv 02 | Aplikace pro analýzu dat z prodejen obchodního řetězce | dist; set |
cv 03 | Experimenty s datovými strukturami a jejich rychlostmi | úpravy předchozích |
cv 04 | ZÁPOČET 1 | |
cv 05 | Framework pro simulaci systému hromadné obsluhy | SHO |
cv 06 | Sudoku | Backtracking |
cv 07 | Playlist na párty | Knapsack |
cv 08 | ZÁPOČET 2 | |
cv 09 | Nejkratší cesta | Dijkstra |
cv 10 | Kostra grafu | Prim-Jarník |
cv 11 | Město Plzeň, české železnice | |
cv 12 | ZÁPOČET 3 | |
cv 13 | Ukázka distribuce funkčního SW, REZERVA |
https://github.com/JakubSido/example_package
- na konci každého cvičení doporučujeme, jak lze práci rozšiřovat (dobrá příprava na zápočet)
Pyhton dává programátorovi velkou volnost. S velkou sílou přichází však i velká zodpovědnost. Pokud vám záleží na tom, aby po vás byl kód čitelný, pro ostatní přehledný a dobře udržitelný, doporučujeme pročíst si Google Python Style Guide
- Plagiátorství
- Porušení pravidel nastavených pro vypracování úloh.
-
Nevalidní kód
- Odevzdané zdrojové kódy nejsou validním kódem v jazyce Python - znemožňují spuštění programu.
-
Program nelze spustit dle specifikace z jiného důvodu. Například:
- chybí importy,
- program nepracuje s argumenty předanými z příkazové řádky.
-
Program havaruje
- Program havaruje na neošetřené výjimce (např. dělení nulou, index out of range, ...)
-
Program nedoběhne během vyhrazeného času.
- Program obsahuje nekonečnou smyčku, nebo je řádově pomalejší než by měl být například v důsledku neefektivního algoritmu.
Závažné chyby: mohou být důvodem ke znemožnění hodnocení nebo snížení bodového ohodnocení části vaší práce.
-
Neošetřený vstup programu (např. chybějící kontrola parametrů předaných z příkazové řádky).
-
Málo obecný algoritmus. Program funguje pouze na konkrétních vstupech a není dobře přenositelný. Např:
- Předpoklady, které vedou k nemožnosti spustit program s jiným vstupním souborem.
# nefunkční, pokud bude pokladen více, nebo nebudou číslované od 0 if (i.ckpt == "vege_0" or i.ckpt == "vege_1")
-
Špatná práce s cestami k souborům nebo složkám, která vede na nemožnost spuštění programu na jiném počítači, s jinými daty nebo v jiném adresáři. Např:
- například spojování cest pomocí řetězců, které jsou závislé na platformě,
# platformě závislé spojování cest data_path = data_root +"\\"+ city + "\\"+ day
- absolutní cesty závislé na konkrétním počítači a platformě.
# nefunkční pro data kdekoli jinde (nevíc platformě závislé spojení cesty) data_path = f"C:\\Users\\klokan\\{city}\\{day}\\{shop}.txt" data_path = f"/home/klokan/data-adt/{city}/{day}/{shop}.txt"
-
Špatná dekompozice řešení
- V programu jsou špatně volané funkce. Např:
- nepoužívá návratové hodnoty,
- namísto předaných parametrů používá globální proměnné.
- V programu jsou špatně volané funkce. Např: