Detail předmětu
Počítače a programování 2
FEKT-BPC-PC2SAk. rok: 2018/2019
Předmět je zaměřen na získání dovedností algoritmizace a strukturování zadané úlohy. Studenti se také učí vybrat vhodné prostředí pro její realizaci. Základy strukturovaného programování jsou prezentovány pomocí jazyka C a Wiring. Praktické zkušenosti získají studenti při realizaci úkolů v prostředí Microsoft Visual Studio a Arduino IDE. Další část předmětu je zaměřená na programování v prostředí MATLAB. Jsou prezentovány dostupné knihovny a simulační nástroje s ohledem na využití v energetice. Třetí část předmětu je věnována vizuálnímu programování v prostředí LabView. Jsou představeny základní principy realizace algoritmů v tomto prostředí a provázání na uživatelské rozhraní aplikace.
Jazyk výuky
Počet kreditů
Garant předmětu
Zajišťuje ústav
Výsledky učení předmětu
- vysvětlit funkci příkazů jazyka C,
- popsat vlastnosti základních datových typů,
- navrhnout strukturu pro reprezentaci složitější dat,
- použít funkce obsažené ve standardních knihovnách,
- sestavit algoritmus pracující s jednorozměrnými a vícerozměrnými poli,
- sestavit algoritmus pro seřazení seznamu hodnot,
- vytvořit knihovnu funkcí,
- vytvořit interaktivní aplikaci.
Prerekvizity
Plánované vzdělávací činnosti a výukové metody
Způsob a kritéria hodnocení
až 20 bodů za testy během semestru (5 bodů za test)
až 28 bodů za zápočtový test na konci semestru
až 30 bodů za individuální projekt v jazyce C/C++
Podmínkou pro udělení zápočtu je kromě dosažení minimálního bodů 50 vypracování a obhájení individuálního projektu.
Osnovy výuky
2. Strukturované programování, příkazy, datové typy.
3. Vstup a výstup, soubory, zařízení.
4. Tvorba vlastní funkce, knihovny funkcí, předávání parametrů.
5. Algoritmy pro zpracování datových řad.
6. MATLAB – rekapitulace základů programování.
7. MATLAB – přehled knihoven pro elektrotechniku a energetiku.
8. MATLAB – pokročilé programování.
9. MATLAB – Simscape Power Systems.
10. LabView – uživatelské rozhraní, tvorba aplikace.
11. LabView – základní knihovny.
12. LabView – datové struktury, tvorba podprogramu.
13. LabView – využití v energetice.
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
PROKOP, J. Algoritmy v jazyku C a C++. Praha: Grada Publishing, 2008. (CS)
STROUSTRUP, B. The C++ Programming Language, 4th Edition, Addison-Wesley, 2013. (EN)
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í.