IB113 Úvod do programování a algoritmizace

Pro podzim 2025 budou podklady aktualizovány.

Organizace výuky

Harmonogram, přednášky, instrukce

Rozpis přednášek do týdnů je pracovní a může se v průběhu semestru mírně změnit. Slidy budou průběžně doplňovány (zde i v ISu – složka Učební materiály).

Termín TémaSlidy
Týden 1Úvod (administrativa předmětu, motivace, Python demo)
Týden 2Základní konstrukce (proměnné, výrazy, řídicí struktury, funkce)
Týden 3Programy pracující s čísly (číselné typy, jednoduché ukázky, algoritmy)
Týden 4Řetězce, náhodná čísla
Týden 5Seznamy
Týden 6Práce se seznamy, vyhledávání a řazení, základy složitosti
Týden 7Datové typy a jejich užití (slovník, množina, seznam, zásobník, fronta)
Týden 8Rekapitulace, příklady, 2D seznamy
Týden 9Vybrané záludnosti (proměnné, paměť, typy, rekurze, ...)
Týden 10Práce s daty a texty, regulární výrazy
Týden 11Strukturovaná data, objekty, styl
Týden 12 Obrázky (reprezentace, generování, úpravy)
Týden 13 Vývoj programů, přehled programovacích jazyků, praktické tipy

Cvičení

Rozpis cvičení je pouze orientační, přesná podoba cvičení a rozdělení témat do týdnů záleží na konkrétním cvičícím.

TýdenPříklady Znalosti Pythonu
1Rozcvičky, želví grafikazákladní představa o syntaxi
2Výpisy posloupností ovládání Python IDLE, roměnné, for, while, if, funkce (bez return)
3Textová grafika, jednoduché výpočty funkce (+return)
4Dělitelnost, prvočísla, náhodná čísla, simulacerandom
5Práce s řetězci, jednoduché šifrypráce s řetězci
6Seznamy (základní použití)práce se seznamy
7Binární vyhledávání (hra na hádání čísla, vyhledávání v seznamu)input
8Vnitrosemestrální test 1, algoritmy nad seznamyslovník
9Vnořené seznamy, reprezentace herního plánu 2D seznamy
10Využití datových struktur (např. frekvenční analýza)slovníky
11Zpracování textu, regulární výrazypráce se soubory, řazení, regulární výrazy (re)
12Bitmapová grafika (transformace obrázků) tuple, knihovna Image
13Vnitrosemestrální test 2

Hodnocení

Hodnocení předmětu se skládá ze tří částí (celkově 500 bodů):

Pro řešení DÚ a vnitrosemestrální písemky je zakázáno používat nástroje umělé inteligence, více viz vyjádření k použití AI.

Výjimečně je možné získat v průběhu semestru bonusové body (aktivita na přednášce či cvičení, kreativní zpracování domácího úkolu). Za nepřipravenost na cvičení (základní neznalosti o obsahu přednášek) mohou být uděleny i záporné body.

Pro úspěšné ukončení předmětu je nutno splnit všechny následující požadavky:

Známka se uděluje na základě celkového počtu bodů (hranice pro jednotlivé známky jsou rozděleny rovnoměrně mezi 270 a 500).

Postup při nesplnění podmínek

Domácí úkoly

Domácí úkoly 1, 3, 5 a 6 zadává a opravuje cvičící. Všechny skupiny mají tyto úkoly podobného tématu a obtížnosti, přesné zadání ale může mít každá skupina jiné. Domácí úkoly 2 a 4 se budou řešit přes systém Umíme informatiku, kde se řešení automaticky vyhodnocují. Tyto úkoly budou mít centrální zadání a termín.

Úkoly vypracovávejte zcela samostatně. Opisování se trestá přísně. Nesdílejte svoje řešení s ostatními. V případě výskytu identických řešení budou potrestáni všichni dotčení (neřešíme kdo od koho opisoval).

Následující harmonogram je jen orientační.

ZadáníOdevzdání Popis
1 3. týden4. týdenJednoduché posloupnosti a obrázky
2 5. týden6. týdenŘešení úloh ze systému Umíme informatiku (základy)
3 6. týden8. týdenSimulace jednoduché hry s náhodou
4 8. týden10. týdenŘešení úloh ze systému Umíme informatiku (řetězce, seznamy)
5 10. týden12. týdenHra na 2D plánu
6 12. týden14. týdenZpracování textu a obrázků

Zdroje

Jednostránkový tahák

IB113 tahák

Primární doporučené zdroje na procvičování

Příklady knih

Příklady online zdrojů