460-2001/02 – Algoritmy I (ALG I)

Garantující katedraKatedra informatikyKredity5
Garant předmětudoc. Mgr. Jiří Dvorský, Ph.D.Garant verze předmětudoc. Mgr. Jiří Dvorský, Ph.D.
Úroveň studiapregraduální nebo graduálníPovinnostpovinný
Odkaz na webJazyk výukyčeština
Rok zavedení2013/2014Rok zrušení
Určeno pro fakultyUSP, FEIUrčeno pro typy studiabakalářské
Výuku zajišťuje
Os. čís.JménoCvičícíPřednášející
DOH089 Ing. Pavel Dohnálek
DVO26 doc. Mgr. Jiří Dvorský, Ph.D.
GAJ03 Ing. Petr Gajdoš, Ph.D.
OH140 RNDr. Eliška Ochodková, Ph.D.
VUJ0008 Ing. Bc. Adam Vůjtek
Rozsah výuky pro formy studia
Forma studiaZp.zak.Rozsah
prezenční Klasifikovaný zápočet 2+2
kombinovaná Klasifikovaný zápočet 10+0

Cíle předmětu vyjádřené dosaženými dovednostmi a kompetencemi

Seznámit studenty se základy strukturovaného programování, se základy jazyka C++. Po absolvování předmětu bude student schopen: pracovat s integrovaným vývojovým prostředím pro jazyk C++, definovat a popsat základní programové konstrukce, vytvořit a odladit jednoduchý program C++, využívat datové struktury jako je například pole, seznam atd., napsat rekurzívní funkci, využívat třídící a vyhledávací algoritmy ve svých programech.

Vyučovací metody

Přednášky
Cvičení (v učebně)

Anotace

Tento předmět je úvodním kurzem programování. U studentů se předpokládá obecná orientace ve výpočetní technice a středoškolské matematice. Probírané algoritmy a datové struktury budou demonstrovány v jazyce C++. Nemalý důraz je kladen na praktickou implementaci probíraných algoritmů a datových struktur. Studenti jsou vedeni analýze algoritmizovaných problémů a k syntéze řešení z menších celků.

Povinná literatura:

Studijní opora (skripta), dostupné na stránkách garanta předmětu, www.cs.vsb.cz/dvorsky Wirth, N.: Algoritmy a štruktúry údajov, Alfa, Bratislava 1989. Sedgewick R.: Algoritmy v C, části 1-4, SoftPress, Praha, 2003 Wróblewski P.: Algoritmy. Datové struktury a programovací techniky, Computer Press, Praha 2003 SCHILDT. Herbert. Nauč se sám C++. Osborne/Softpress. 2000. ISBN 80-86497-13-5

Doporučená literatura:

Cormen, Leiserson, Rievest: Introduction to Algorithms, MIT Press, 2001. Stroustrup, B.: C++ Programovací jazyk. Česky: BEN-technická literatura, Praha 1997 Virius M.: Pasti a propasti jazyka C++, ComputerPress, Praha 2005, druhé vydání, ISBN 80-251-0509-1

Způsob průběžné kontroly znalostí během semestru

Podmínky udělení zápočtu Realizace a obhajoba projektu. Programování jednoduchých aplikací na cvičeních

E-learning

Další požadavky na studenta

U studentů se předpokládá znalost středoškolské matematiky a uživatelská znalost počítačů.

Minimální znalostní požadavky

Prerekvizity

Předmět nemá žádné prerekvizity.

Korekvizity

Předmět nemá žádné korekvizity.

Osnova předmětu

Náplň přednášek Úvodní přednáška, organizační záležitosti První program v C++, algoritmus, program, překlad, procesor, proces Proměnné, konstanty, datové typy Řídící konstrukce jazyka (sekvence, větvení, cyklus) Strukturované programování v C++, funkce a jejich parametry, volání funkcí Pole Vyhledávání v poli (sekvenční, půlením intervalu) Seznam, fronta, zásobník Rekurze, vymezení pojmu, příklady, jednoduchý backtracking Třídění, vymezení problému, adresní třídění Základní třídící algoritmy (třídění vkládáním, výběrem, bublinové) Pokročilé třídící algoritmy (QuickSort, HeapSort, MergeSort) Náplň počítačových cvičení Seznámení se s vývojovým prostředím, plánováno Visual Studio 2015 Implementace a ladění triviálních programů - Hello world Implementace a ladění programů se základními konstrukcemi např. výpočet největšího společného dělitele Práce s funkcemi, parametry volané hodnotou, odkazem, konstantní parametry Práce s polem Implementace algoritmů vyhledávání v poli Implementace zásobníku, ukázky využití Rekurzivní funkce Rekurzivní funkce Třídící algoritmy Náplň projektů Zadání projektů budou směřována k využití třídících a vyhledávacích algoritmů, práci s poli a podobně.

Podmínky absolvování předmětu

Prezenční forma (platnost od: 2017/2018 zimní semestr)
Název úlohyTyp úlohyMax. počet bodů
(akt. za podúlohy)
Min. počet bodů
Klasifikovaný zápočet Klasifikovaný zápočet 100 (100) 51
        Průběžná aktivita Jiný typ úlohy 20  10
        Test z programování Jiný typ úlohy 30  15
        Písemná práce Písemka 50  26
Rozsah povinné účasti: povinná účast na cvičeních, jsou akceptovány 2 omluvy

Zobrazit historii
Kombinovaná forma (platnost od: 2013/2014 zimní semestr)
Název úlohyTyp úlohyMax. počet bodů
(akt. za podúlohy)
Min. počet bodů
Klasifikovaný zápočet Klasifikovaný zápočet 100 (100) 51
        První test Písemka 20  10
        Druhý test Jiný typ úlohy 20  10
        Třetí test Jiný typ úlohy 20  10
        Projekt Projekt 40  21
Rozsah povinné účasti:

Zobrazit historii

Výskyt ve studijních plánech

Akademický rokProgramOborSpec.FormaJazyk výuky Konz. stř.RočníkZLTyp povinnosti
2017/2018 (B2647) Informační a komunikační technologie P čeština Ostrava 1 povinný stu. plán
2017/2018 (B2647) Informační a komunikační technologie K čeština Ostrava 1 povinný stu. plán
2017/2018 (B2660) Počítačové systémy pro průmysl 21. století P čeština Ostrava 1 povinný stu. plán
2017/2018 (B3973) Automobilové elektronické systémy P čeština Ostrava 1 povinný stu. plán
2016/2017 (B2647) Informační a komunikační technologie P čeština Ostrava 1 povinný stu. plán
2016/2017 (B2647) Informační a komunikační technologie K čeština Ostrava 1 povinný stu. plán
2016/2017 (B2660) Počítačové systémy pro průmysl 21. století P čeština Ostrava 1 povinný stu. plán
2015/2016 (B2647) Informační a komunikační technologie P čeština Ostrava 1 povinný stu. plán
2015/2016 (B2647) Informační a komunikační technologie K čeština Ostrava 1 povinný stu. plán
2014/2015 (B2647) Informační a komunikační technologie P čeština Ostrava 1 povinný stu. plán
2014/2015 (B2647) Informační a komunikační technologie K čeština Ostrava 1 povinný stu. plán
2013/2014 (B2647) Informační a komunikační technologie P čeština Ostrava 1 povinný stu. plán
2013/2014 (B2647) Informační a komunikační technologie K čeština Ostrava 1 povinný stu. plán

Výskyt ve speciálních blocích

Název blokuAkademický rokForma studiaJazyk výuky RočníkZLTyp blokuVlastník bloku
V - ECTS - bc. 2014/2015 prezenční čeština volitelný odborný 401 - Studijní oddělení FEI stu. blok
V - ECTS - bc. 2013/2014 prezenční čeština volitelný odborný 401 - Studijní oddělení FEI stu. blok