Detail předmětu
Počítače a programování 2
FEKT-BPC2EAk. rok: 2018/2019
Studenti se seznámí s algoritmizací složitějších úloh, jazykem C podle standardu ANSI, programování s řetězci a se soubory, tvorba vlastních knihovních funkcí a sestavováním pokročilých datových typů, struktury, ukazatele a dynamické proměnné, základy objektového programování v jazyce C++, třídy, šablony a sestavení aplikace s grafickými výstupy ve vývojovém prostředí Microsoft Visual Studio.
Jazyk výuky
Počet kreditů
Garant předmětu
Zajišťuje ústav
Výsledky učení předmětu
Prerekvizity
Plánované vzdělávací činnosti a výukové metody
Způsob a kritéria hodnocení
Osnovy výuky
2. ANSI C, standardní knihovny jazyka C, překlad, preprocesor, direktivy, řetězce v C
3. Práce se vstupy a výstupy v jazyce C, práce se soubory
4. Pokročilé datové typy, dynamické proměnné, struktura, unie použití dynamických proměnných, lineární seznam, lineární uspořádaný seznam, zásobník, strom.
5. Rozsáhlejší ukázková aplikace s využitím dynamických proměnných, čtení a zápisu do souboru a vlastní knihovny funkcí
6. Úvod do objektového programování, datové abstrakce, objektové typy, třídy, inicializace, konstruktory, destruktory, definice jednoduchého objektu
7. Ukazatel this, práce se třídami, přetěžování operátorů
8. Přátelé, členské a nečlenské funkce, třídy a dynamické přidělování paměti
9. Standardní konstruktory, kopírovací konstruktory, ukazatele na objekt
10. Dědičnost tříd, polymorfismus a virtuální funkce, odvozená třída, polymorfní veřejná dědičnost
11. Použití šablony tříd, přátelé, vnořené třídy, výjimky
12. Standardní knihovna šablon, práce se vstupy a výstupy, proudy, práce se soubory
13. Grafické výstupy ve Windows
Učební cíle
Vymezení kontrolované výuky a způsob jejího provádění a formy nahrazování zameškané výuky
Základní literatura
Doňar, B., Zaplatílek, K. MATLAB pro začátečníky. Praha: BEN – technická literatura, 2003.
Prokop, J. Algoritmy v jazyku C a C++. Praha: Grada Publishing, 2008. (CS)
Virius, M. Jazyky C a C++. Komplexní kapesní průvodce. Praha: Grada Publishing, 2005. (CS)
Zařazení předmětu ve studijních plánech
Typ (způsob) výuky
Přednáška
Vyučující / Lektor
Osnova
2. Úvod do jazyka C. Základní typy proměnných, odvozené typy, konstanty, pole.
3. Výrazy, aritmetické konverze, aritmetické operátory, operátory posuvů, relační operátory, logické operátory, bitové operátory, přiřazovací operátory, priorita operátorů.
4. Řetězce a jejich operátory, knihovní funkce, standardní knihovna string.h.
5. Příkazy, složený příkaz, příkazy pro větvení, cykly a přenos řízení. Vývojový diagram.
6. Funkce. Deklarace funkce, metody volání funkcí, ošetření událostí, rekurze funkcí.
7. Pokročilé datové typy. Unie, výčtový typ, dynamické proměnné, ukazatel.
8. Objekty. Lexikální elementy, konstanty a řetězce, třídy objektů, typy objektů.
9. Uživatelské rozhraní Microsoft Visual C++ Studio. Grafické komponenty.
10. Algoritmy I. Vyhledání maxima a minima, třídění.
11. Algoritmy II. Práce s poli, maticové výpočty.
12. Algoritmy III. Práce se soubory ve Windows.
13. Algoritmy IV. Databázové systémy. Záznamy, třídění, vyhledávání, statistiky. Propojení databází.
Cvičení na počítači
Vyučující / Lektor
Osnova
2. Úvod do jazyka C. Základní typy proměnných, odvozené typy, konstanty, pole.
3. Výrazy, aritmetické konverze, aritmetické operátory, operátory posuvů, relační operátory, logické operátory, bitové operátory, přiřazovací operátory, priorita operátorů.
4. Řetězce a jejich operátory, knihovní funkce, standardní knihovna string.h.
5. Příkazy, složený příkaz, příkazy pro větvení, cykly a přenos řízení. Vývojový diagram.
6. Funkce. Deklarace funkce, metody volání funkcí, ošetření událostí, rekurze funkcí.
7. Pokročilé datové typy. Unie, výčtový typ, dynamické proměnné, ukazatel.
8. Objekty. Lexikální elementy, konstanty a řetězce, třídy objektů, typy objektů.
9. Uživatelské rozhraní Microsoft Visual C++ Studio. Grafické komponenty.
10. Algoritmy I. Vyhledání maxima a minima, třídění.
11. Algoritmy II. Práce s poli, maticové výpočty.
12. Algoritmy III. Práce se soubory ve Windows.
13. Algoritmy IV. Databázové systémy. Záznamy, třídění, vyhledávání, statistiky. Propojení databází.