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

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