Detail předmětu

Computer Programming 2

FEKT-XPA-PP2Ak. rok: 2022/2023

Algoritmy v MATLABu. Úvod do jazyka Python. Základní datové typy a příkazy. Algoritmy v jazyce Python: přepis vybraných rutin z MATLABu. Pokročilé datové typy (množiny, kolekce). Vytváření a volání funkcí. Lokální a rekurzivní funkce, řídicí struktury a funkce. Moduly a balíčky. Práce se soubory. Objektově orientované programování. Grafické uživatelské rozhraní. Příklady aplikací.

Jazyk výuky

angličtina

Počet kreditů

5

Nabízen zahradničním studentům

Všech fakult

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

Získání základních programovacích návyků a schopnosti algoritmizace. 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í

Hodnocená počítačová cvičení: 10 x 3 = 30 bodů. Testy během semestru: 2 x 10 = 20 bodů. Individuální projekt v jazyce Python: 50 bodů.

Osnovy výuky

01. Python: základní datové typy a příkazy. Algoritmy: třídění, zlatý řez.
02. Algoritmy: lokální a globální optimalizace.
03.Python: pokročilé datové typy. Algoritmy: práce s řetězci I.
04. Python: funkce. Algoritmy: práce s řetězci II.
05. Algoritmy: numerické integrování, číselné konverze.
06. Python: N-tice a soubory. Algoritmy: práce se soubory.
07. Algoritmy: návrh filtru. Zadání individuálního projektu.
08. TEST I
09. Python: moduly a balíčky. Algoritmy: práce s balíčky.
10. Python: objektově orientované programování.
11. Python: grafické uživatelské rozhraní.
12. TEST II.

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.

Základní literatura

LUTZ, M. Learning Python, 5/E. Sebastopol (Canada): O’ Reilly Media, 2013. ISBN: 978-1-449-35573-9 (EN)
BEAZLEY, D., JONES B.K. Python Cookbook, 3/E. Sebastopol (Canada): O’ Reilly Media, 2013. ISBN: 978-1-449-34037-7 (EN)

eLearning

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

  • Program BPA-ELE bakalářský

    specializace BPA-ECT , 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í.

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