Detail předmětu
Úvod do programování a algoritmizace
FSI-1PA Ak. rok: 2023/2024 Zimní semestr
Obsahem předmětu jsou především obecné znalosti a dovednosti týkající se použití vysokoúrovňových programovacích jazyků v inženýrské a vědecké praxi. Využívá se především jazyk Matlab, stejné principy však lze aplikovat na další jazyky (např. Python). Obsah předmětu lze rozdělit do tří části – základy jazyku Matlab, algoritmizace, a obecné principy programovacích jazyků a praktická doporučení.
Jazyk výuky
čeština
Počet kreditů
6
Garant předmětu
Zajišťuje ústav
Vstupní znalosti
Vektory a matice, maticové operace, výroková logika, zakladní počítačová gramotnost.
Pravidla hodnocení a ukončení předmětu
Hodnocení předmětu probíhá na základě standardní bodové škály 0-100b. Studenti mohou získat až 80b za 3 testy v průběhu semestru, a 20b za zpracování a obhajobu semestrálního projektu. Při hodnocení zpracovaných úloh a projektů se přihlíží ke splnění funkčních požadavků i k úrovni zpracování.
Účast na cvičení je povinná. Kontrola výuky se provádí na cvičení. Účast na přednáškách je nepovinná ale doporučená.
Učební cíle
Cílem předmětu je především skrze praktickou zkušenost získat a rozvinout schopnost algoritmizovat a řešit nejčastější inženýrské a matematické problémy, tedy rozložit složitý problém na sadu jednoduchých tak, aby bylo možné je zapsat v syntaxi jazyku Matlab.
Po absolvování předmětu se předpokládá schopnost samostatně využívat jazyk Matlab k různým inženýrským aplikacím. Základní znalosti získané v tomto předmětu slouží také jako základ pro studium (i samostudium) dalších jazyku v jiných aplikacích, např. jazyka C pro programování mikrokontrolerů.
Použití předmětu ve studijních plánech
Program B-MET-P: Mechatronika, bakalářský, povinný
Typ (způsob) výuky
Přednáška
26 hod., nepovinná
Vyučující / Lektor
Osnova
1) Organizace a obsah předmětu, Matlab jako inženýrský nástroj
2) Základní syntaxe jazyku Matlab – proměnné, operátory, řídící struktury
3) Signály a grafy
4) Datové typy a struktury
5) Maticové operace a výpočty
6) Funkce a rekurze
7) Algoritmizace
8) Praktické algoritmy
9) Objektově orientované programování
10) Grafické uživatelské rozhraní
11) Praktické programovací návyky
12) Testování a verzování kódu
13) Programovací jazyky a styly
Cvičení s počítačovou podporou
26 hod., povinná
Vyučující / Lektor
Osnova
1) Proměnné – práce s maticemi a indexování
2) Podmínky
3) Cykly
3) Grafy
4) Náhodná čísla
5) Vektorizace
6) Funkce a rekurze
7) Algoritmická cvičení 1
8) Algoritmická cvičení 2
9) Struktury a objekty
10) Grafické rozhraní
11) Programovací cvičení – Časování a profilování kódu
12) Programovací cvičení – Datový vstup a výstup
13) Programovací cvičení – Prohledávací algoritmy