Detail předmětu

Algoritmizace a programování

FEKT-APRGAk. rok: 2011/2012

Základní pojmy z oblasti programování, úvod k vytváření algoritmů a vlastních programů. Základní prvky programu, cykly, rekurze. Seznámení s programovým prostředím Matlab a tvorba základních skriptů a funkcí řešících jednoduché úlohy. Práce se základními typy dat, vektory, matice, pole, řetězci. Základní algoritmy řazení a vyhledávání. Úvod do analýzy výkonnosti a optimalizace algoritmů. Možnosti využití Matlabu v konkrétních oblastech (knihovny funkcí).

Jazyk výuky

čeština

Počet kreditů

4

Nabízen zahraničním studentům

Všech fakult

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

Studenti se naučí analyzovat a navrhovat jednoduché algoritmy pro počítače. Seznámí se se základní koncepcí programování v Matlabu. Naučí se vytvářet vlastní skripty a funkce a využívat stávající knihovny funkcí. Osvojí si odborné pojmy z oblasti programování, syntax a sémantiku programovacího jazyka.

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í

Podmínky pro úspěšné ukončení předmětu stanoví každoročně aktualizovaná vyhláška garanta předmětu.

Osnovy výuky

Algoritmus, program, programovací jazyk. Programové prostředí Matlab a jeho využití. Základní algoritmy, ověřování správnosti algoritmů a jejich optimalizace. Knihovny funkcí Matlabu.

Učební cíle

Seznámení a osvojení základních programovacích návyků. Studenti se seznámí s některými již vyřešenými úlohami a tyto znalosti budou dále využívat při tvorbě vlastních programů. Studenti se naučí řešit zadané matematické úlohy pomocí vlastních skriptů a funkcí v programovém prostředí Matlab. Seznámení s datovými typy využívaných v Matlabu, jejich vkládání, operace s nimi a možnostmi prezentace výsledků. Využijí postupy rekurzivní i nerekurzivní. Naučí se vytvářet funkce pro vyhledávání a základních metod řazení.

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

Zaplatílek K, Doňar B: Matlab pro začátečníky, Technická literatura BEN, Praha 2003 (CS)
Zaplatílek K, Doňar B: Matlab tvorba uživatelských aplikací, Technická literatura BEN, Praha 2004 (CS)

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

  • Program BTBIO-A bakalářský

    obor A-BTB , 1 ročník, letní semestr, povinný

  • Program EEKR-CZV celoživotní vzdělávání (není studentem)

    obor ET-CZV , 1 ročník, letní semestr, povinný

Typ (způsob) výuky

 

Přednáška

26 hod., nepovinná

Vyučující / Lektor

Osnova

1. Programování, algoritmus, koncepce programu
2. Úvod do Matlabu
3. Přehled základních datových struktur a jejich použití
4. Základní prvky programu, cykly, rekurze
5. Algoritmizace numerických metod
6. Algoritmy řazení
7. Vyhledávací algoritmy
8. Prohledávání textů
9. Analýza výkonnosti algoritmů
10. Odstraňování rekurze a optimalizace algoritmů
11. Pokročilé programovací techniky
12. Knihovny Matlabu
13. Možnosti využití Matlabu v jiných oborech

Cvičení na počítači

26 hod., povinná

Vyučující / Lektor

Osnova

1. Seznámení s programovým prostředím Matlab, jeho části, způsob ovládání
2. Práce se základními typy dat, vkládání dat, možnosti prezentace výsledků
3. Řešení základních matematických úloh, využití základních matematických funkcí Matlabu
4. Procvičení základních typů větvení programu, cyklů v rekurzních úlohách
5. Tvorba skriptů a funkcí
6. Tvorba jednoduchých datových struktur a práce s jednotlivými prvky
7. Návrh jednoduchých funkcí pro řazení prvků pomocí metod Select sort, Buble sort, Insert sort
8. Tvorba jednoduché datové databáze, prohledávání textů
9. Zadání samostatných projektů, nástin řešení, test (max 20b)
10. Grafické aplikační rozhraní Matlabu Guide
11. Aplikace vlastních funkcí do jednoduchého grafického rozhraní Guide
12. Odevzdání a prezentace studentských prací (max 20b)
13. Závěrečný test (max 60b), udělování klasifikovaných zápočtů