UIIABP0001 Algoritmy a programování I

Filozoficko-přírodovědecká fakulta v Opavě
zima 2023
Rozsah
2/2/0. 4 kr. Ukončení: z.
Vyučující
doc. RNDr. Lucie Ciencialová, Ph.D. (přednášející)
doc. RNDr. Lucie Ciencialová, Ph.D. (cvičící)
RNDr. Jiří Martinů, Ph.D. (cvičící)
Mgr. Jan Schreier (cvičící)
RNDr. Šárka Vavrečková, Ph.D. (cvičící)
Garance
doc. RNDr. Lucie Ciencialová, Ph.D.
Ústav informatiky – Filozoficko-přírodovědecká fakulta v Opavě
Rozvrh
Út 16:25–18:00 H2
  • Rozvrh seminárních/paralelních skupin:
UIIABP0001/A: St 9:45–11:20 B3a, Š. Vavrečková
UIIABP0001/B: St 18:05–19:40 B3a, J. Schreier
UIIABP0001/C: Čt 17:15–18:50 H4, J. Martinů, Š. Vavrečková
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Mateřské obory/plány
Cíle předmětu
Předmět Algoritmy a programování I je úvodem do programování, studenti se naučí navrhovat algoritmy, pochopí jejich logickou strukturu, syntaxi a sémantiku programovacího jazyka. Studenti se rovněž naučí správně používat datové typy (jak standardní, tak i typy definované uživatelem), cykly, procedury a funkce. V předmětu budou studenti seznámeni také se základními metodami optimalizace algoritmů.
Výstupy z učení
Student bude po absolvování předmětu schopen: navrhovat algoritmy, chápat jejich logickou strukturu, syntaxi a sémantiku programovacího jazyka, správně používat datové typy (jak standardní, tak i typy definované uživatelem), správně využívat cykly, procedury a funkce. Student taktéž bude schopen základních optimalizací algoritmů.
Osnova
  • 1. Algoritmus, dělení algoritmů, rekurze, iterace, reprezentace algoritmů.
  • 2. Asymptotiky, časová a prostorová složitost.
  • 3. Základní pojmy a syntaxe: proměnná, pole, operátory, aritmetické výrazy, větvení, cykly, funkce.
  • 4. Vývojové diagramy.
  • 5. Jazyk C, C++: základní syntaxe, komentáře, struktura programu.
  • 6. Proměnné a jednoduché datové typy.
  • 7. Funkce, funkce main, struktury IF THEN ELSE, SWITCH.
  • 8. Cykly WHILE, DO WHILE, FOR.
  • 9. Práce se soubory.
  • 10. Datový typ pole.
  • 11. Algoritmy řazení: InsertSort, SelectSort, BubbleSort, ShellSort, QuickSort, MergeSort.
  • 12. Složené datové typy, struktury.
  • 13. Ukazatele.
Výukové metody
Přednáška, cvičení
Metody hodnocení
Odevzdání úkolů a zápočtového projektu, diskuse nad projektem.
Povinná účast na cvičeních min. 75%.
Další komentáře
Studijní materiály
Předmět je zařazen také v obdobích zima 2020, zima 2021, zima 2022, zima 2024.