Detail předmětu
Počítačové programování 2
FEKT-BPC-PP2Ak. rok: 2020/2021
Jazyk ANSI C - základní a odvozené datové typy, konstanty, operátory, výrazy, příkazy, program, funkce, stuktury, dynamické proměnné. Konzolové aplikace - základní algoritmy a programy (vyhledávání, třídění). Úvod do objektového programovaní, vývoj jednoduchých aplikací pro Windows v C++.
Jazyk výuky
čeština
Počet kreditů
5
Garant předmětu
Zajišťuje ústav
Výsledky učení předmětu
Získání základních programovacích návyků a dovednosti algoritmizaci. Pochopení základních vlastností a struktur jazyka Python.
Prerekvizity
Jsou požadovány znalosti na úrovni středoškolského studia.
Plánované vzdělávací činnosti a výukové metody
Metody vyučování závisejí na způsobu výuky a jsou popsány článkem 7 Studijního a zkušebního řádu VUT.
Způsob a kritéria hodnocení
Student může získat maximálně 32 bodů za aktivní práci v počítačových cvičení, 68 bodů za individuální projekt v jazyce Pyhton.
Osnovy výuky
1. Úvod do procedurálního programováni v jazyce Python. Základní datové typy
2. Datové typy (Množinové typy, N-tice, kolekce), tvorba a volání funkcí
3. Řídicí struktury a funkce, moduly a balíčky, lokální́ a rekurzivní́ funkce
4. Algoritmy I (vyhledaní maxima/minima, Eukleidův algoritmus, násobení matic, Gauss-Seidlova eliminace, třídění)
5. Objektově̌ orientované́ programování, práce se soubory
6. Zpracováni obrazu (OpenCV)
7. Procesy a vlákna, databáze
8. Práce s vektory, maticemi a tenzory
9. Propojení v síti
10. Neuronové sítě
11. Algoritmy II (1D konvoluce, FIR filtrace, Flood fill, Dijkstrův algoritmus)
12. Programování grafického uživatelského rozhraní (Qt, Tk)
13. Základy a syntaxe jazyka C
2. Datové typy (Množinové typy, N-tice, kolekce), tvorba a volání funkcí
3. Řídicí struktury a funkce, moduly a balíčky, lokální́ a rekurzivní́ funkce
4. Algoritmy I (vyhledaní maxima/minima, Eukleidův algoritmus, násobení matic, Gauss-Seidlova eliminace, třídění)
5. Objektově̌ orientované́ programování, práce se soubory
6. Zpracováni obrazu (OpenCV)
7. Procesy a vlákna, databáze
8. Práce s vektory, maticemi a tenzory
9. Propojení v síti
10. Neuronové sítě
11. Algoritmy II (1D konvoluce, FIR filtrace, Flood fill, Dijkstrův algoritmus)
12. Programování grafického uživatelského rozhraní (Qt, Tk)
13. Základy a syntaxe jazyka C
Učební cíle
Naučit studenty základním programovacím návykům a algoritmizaci. Vysvětlit základní vlastnosti a struktury jazyka Python a jeho využití.
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.
Elearning
eLearning: aktuální otevřený kurz
Zařazení předmětu ve studijních plánech
- Program BPC-EKT bakalářský 2 ročník, zimní 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í.
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í.
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
eLearning: aktuální otevřený kurz