Detail předmětu
Algoritmizace a programování
CESA-SPRGAk. rok: 2024/2025
Předmět je koncipován jako úvod do problematiky algoritmizace a programování. Studenti jsou seznámeni se základními pojmy z oblasti programování, vytváření algoritmů a programů. Je kladen důraz na pochopení návrhu a realizace programů. Jsou požadovány znalosti základních prvků programu a prokázání, že jsou studenti schopni tyto prvky používat. Studenti jsou seznámeni s programovacím jazykem Python, pomocí něhož studenti naprogramují jednoduché úlohy.
Jazyk výuky
Počet kreditů
Garant předmětu
Zajišťuje ústav
Vstupní znalosti
Pravidla hodnocení a ukončení předmětu
1. programovací test 1 (max. 10 bodů),
2. programovací test 2 (min. 10 bodů, max. 20 bodů),
3. semestrální test (min. 25 bodů, max. 50 bodů),
3. domácí úkoly (10 x 2 body, max. 20 bodů).
Dílčí aktivity mají prověřit schopnosti studenta navrhnout algoritmy pro řešení jednoduchých úloh a prokázat je realizací příslušných programů.
Počítačová cvičení jsou povinná, řádně omluvené zmeškané cvičení lze po domluvě s vyučujícím nahradit individuálně.
Učební cíle
Absolvent studia je schopen:
- navrhnout algoritmy jednoduchých úloh,
- používat základní prvky programu (proměnné, matematické operace, podmínky, cykly aj.),
- používat iterační i rekurzivní postupy,
- navržené algoritmy přepsat do programu programovacího jazyka Python,
- pracovat se základními datovými strukturami,
- vytvořit funkce pro vyhledávání a základních metod řazení podle známých algoritmů,
- vytvořit vlastní knihovnu funkcí,
- vlastní programy popsat a vysvětlit.
Základní literatura
Lee, Kent D ; Hubbard, Steve ; Cham: Data Structures and Algorithms with Python, Springer International Publishing ; 2015 Undergraduate Topics in Computer Science (EN)
Padmanabhan, T R: Programming with Python, Springer Nature Singapore Pte Ltd. 2016 (EN)
Doporučená literatura
Elearning
Zařazení předmětu ve studijních plánech
- Program BPC-STC bakalářský 1 ročník, letní semestr, povinný
Typ (způsob) výuky
Cvičení s počítačovou podporou
Vyučující / Lektor
Osnova
2. Přehled záklaních datových typů, textové řetězce a jejich použítí
3. Základní prvky programu, podmínky, seznamy a jejich použití
4. Základní prvky programu, cykly for a příklady I.
5. Základní prvky programu, cykly while a příklady II.
6. Funkce a moduly
7. Základy Git
8. Práce se soubory v Pythonu
9. Přehled základních datových struktur a jejich použití
10. Analýza výkonnosti algoritmů, asymptotická složitost
11. Vyhledávácí algoritmy
12. Řadící algoritmy
13. Rekurze, rozděl a panuj
Elearning