Detail předmětu

Počítače a programování 2

FEKT-BPC-PC2SAk. rok: 2022/2023

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.  

Studenti získají základy programování  v jazyce C/C++ a praktické zkušenosti získají studenti při realizaci úkolů v prostředí Dev C++. 

Druhá část předmětu je zaměřená na filozofii programování v prostředí MATLAB, která je zacílena zejména na schopnost si samostatně vytvořit a odladit funkci pro načítání, zpracování, vizualizaci a uložení dat.

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

čeština

Počet kreditů

5

Výsledky učení předmětu

Absolvent předmětu je schopen:

1.část jazyk C/C++:  Student dokáže vysvětlit funkci příkazů jazyka C, popsat vlastnosti základních datových typů, použít funkce obsažené ve standardních knihovnách, sestavit algoritmus pracující s jednorozměrnými a vícerozměrnými poli, vytvořit program v konzolové aplikaci s využitím vlastních funkcí.

2.část MATLAB: Student si osvojí základní schopnosti nezbytné pro vytváření funkce/ kódu plnící specifický cíl. Osvojený proces obsahuje tyto základní fáze: načtení či generování vstupních dat, zpracování vstupních dat a jejich vizualizace s využitím základních funkcí Matlabu, ukládání a správa výsledků do souborů. Výsledkem učení bude i schopnost si průběžně ověřovat a ladit vyvíjený kód s využitím základních nástrojů prostředí Matlab.

3.část LabView: Student si osvojí podstatu a použití prostředí LabVIEW, práci s proměnnými, řízení datového toku, využití základních i komplexních funkcí, práci se zdroji (soubory, komunikační rozhranní, přístroje). Výsledkem učení bude schopnost realizovat jednoduché programy vykonávající rutinní funkce ve vazbě na souborové zdroje, ale i HW periferie.


Prerekvizity

Jsou požadovány znalosti na úrovni středoškolského studia. Dále jsou žádoucí znalosti práce se soubory v prostředí Microsoft Windows.

Plánované vzdělávací činnosti a výukové metody

Metody vyučování zahrnují přednášky a cvičení na počítači. 

Způsob a kritéria hodnocení

Klasifikovaný zápočet:

1.část:  jazyk C/C++ – max. 33 bodů. Body jsou rozděleny následujícím způsobem: max. 4x6 bodů ze cvičení za zpracované zadání (program) ve cvičení + max. 9 bodů ze závěrečného testu (student musí získat min. 4 b.).

2.část:  Matlab – max. 33 bodů

3.část:  LabView – max. 34 bodů (min. 10). Bodové hodnocení v této části je rozdělené mezi samostatné úkoly a závěrečný test. Samostatné úkoly na cvičeních jsou 4, s hodnocením max. 6 bodů každý. Závěrečný test je hodnocen max. 10 body. Pro zápočet je povinné absolvování testu a minimální počet bodů z této části je 10. Samostatné úkoly jaou zaměřeny na aplikaci poznatků získamných na daném počítačovém cvičení. Test je zaměřen na orientaci a znalosti v oblasti programovacího prostředí LabVIEW, algoritmizaci úloh a implementaci základních funkcí.

S podmínkami pro získání bodů v předmětu BPC-PC2S seznámí každý vyučující na své první přednášce/cvičení výuky.

 


Osnovy výuky

1.-4. týden:  jazyk C/C++  - konzolová aplikace, příkazy, datové typy, proměnné, pole, vstup a výstup, příkazy cyklu, podmínkové příkazy, tvorba vlastní funkce, knihovny funkcí, předávání parametrů.

5.-8. týden: MATLAB – rekapitulace základů programování, přehled knihoven pro elektrotechniku a energetiku, pokročilé programování, Simscape Power Systems.

9.-13. týden: LabView – uživatelské rozhraní, tvorba aplikace, základní knihovny, datové struktury, tvorba podprogramu, využití v energetice.

 

Učební cíle

Cílem předmětu je naučit studenty obecným programovacím návykům a algoritmizaci úloh. 

Při výuce jsou prezentovány různé programovací jazyky a vývojové prostředí, které lze využít při dalším studiu.

Absolvent kurzu by měl být schopen vybrat vhodný nástroj podle typu řešené úlohy a implementovat základní algoritmy.

Vymezení kontrolované výuky a způsob jejího provádění a formy nahrazování zameškané výuky

Vymezení kontrolované výuky a způsob jejího provádění stanoví každoročně aktualizovaná vyhláška garanta předmětu.

Základní literatura

HEROUT, P. Učebnice jazyka C. KOPP, 2004. (CS)
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)
DOŇAR, B., ZAPLATÍLEK, K. MATLAB - tvorba uživatelských aplikací. BEN, 2004. (CS)
KARBAB, P. Výpočty a simulace v programech Matlab a Simulink. COMPUTER PRESS, 2006. (CS)
HAVLÍČEK, J., VLACH, J., VLACH, M., VLACHOVÁ, V. Začínáme s LabVIEW. BEN, 2008. (CS)

eLearning

Zařazení předmětu ve studijních plánech

  • Program BPC-SEE bakalářský, 1. ročník, letní semestr, povinný

Typ (způsob) výuky

 

Přednáška

26 hod., nepovinná

Vyučující / Lektor

Osnova

1. Algoritmizace (rozšíření základních poznatků z předchozího semestru). Definice úlohy, definice vstupů/výstupů, zápis algoritmu v metajazyku, přepis do programovacího jazyka.
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

26 hod., povinná

Vyučující / Lektor

Osnova

1. Algoritmizace (rozšíření základních poznatků z předchozího semestru). Definice úlohy, definice vstupů/výstupů, zápis algoritmu v metajazyku, přepis do programovacího jazyka.
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í.

eLearning