460-8701/01 – Programování v C/C++ (CPP)

Garantující katedraKatedra informatikyKredity4
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ý
Ročník1Semestrzimní
Jazyk výukyčeština
Rok zavedení2010/2011Rok zrušení2020/2021
Určeno pro fakultyUSPUrčeno pro typy studiamagisterské, navazující magisterské
Výuku zajišťuje
Os. čís.JménoCvičícíPřednášející
DVO26 doc. Mgr. Jiří Dvorský, Ph.D.
Rozsah výuky pro formy studia
Forma studiaZp.zak.Rozsah
prezenční Klasifikovaný zápočet 2+2
kombinovaná Klasifikovaný zápočet 2+6

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

Naučit studenty používat programovací jazyky C a C++ podle ISO/ANSI normy. Kurs poskytne začátečníkům i pokročilým základy procedurálního i objektově orientovaného programování. Jazyky C a C++ umožní přechod na různé HW platformy. Důraz je kladen na specifické prvky jazyka C++, ze kterých vycházejí nebo vůči kterých se vymezují ostatní dnes používané jazyky.

Vyučovací metody

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

Anotace

Naučit studenty používat programovací jazyky C a C++ podle ISO/ANSI normy. Kurs poskytne začátečníkům i pokročilým základy procedurálního i objektově orientovaného programování. Jazyky C a C++ umožní přechod na různé HW platformy. Důraz je kladen na specifické prvky jazyka C++, ze kterých vycházejí nebo vůči kterých se vymezují ostatní dnes používané jazyky.

Povinná literatura:

Stroustrup, B.: C++ Programovací jazyk. Česky: BEN-technická literatura, Praha 1997 Šaloun, P.: Programovací jazyk C++ pro zelenáče. Vydal Neocortex Praha, 2005, s. 252, ISBN 80-86330-18-4. Šaloun, P.: Programovací jazyk C, pro zelenáče. Vydal Neokortex 1999, ISBN 80-86330-02-X Richta, K., Šaloun, P.: Programovací jazyk C, skriptum ČVUT, Praha 1998 Šaloun, P.: Programovací jazyk C. Skriptum FEI VŠB-TU Ostrava 1994. Kernighan, B., Ritchie, D.: Programovací jazyk C, Alfa Bratislava, 1988 Herout, P., Rudolf, V., Šmrha, P.: ABC programátora v jazyce C, nakladatelství KOPP, České Budějovice, 1992 Vondrák, I., Šaloun, P.: Objektově orientované programování, skriptum VŠB Ostrava, 1994 Horstmann, C. S.: Vyšší škola objektového návrhu v C++. Science, Veletiny 1997

Doporučená literatura:

SCHILDT. Herbert. Nauč se sám C++. Osborne/Softpress. 2000. ISBN 80-86497-13-5 SCHILDT. Herbert. Nauč se sám C. Osborne/Softpress. 2000. ISBN 80-86497-16-X Sylaby přednášek. Eletronické výukové materiály: HTML a Macromedia Flash simulace. Virius M.: Pasti a propasti jazyka C++, ComputerPress, Praha 2005, druhé vydání, ISBN 80-251-0509-1 Sedgewick R.: Algoritmy v C, části 1-4, SoftPress, Praha 2003, ISBN 80-86497-56-9

Forma způsobu ověření studijních výsledků a další požadavky na studenta

E-learning

Další požadavky na studenta

Žádné další požadavky na studenta nejsou kladeny.

Prerekvizity

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

Korekvizity

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

Osnova předmětu

Přednášky: Pojem algoritmu, požadavky na algoritmus, způsoby zápisu algoritmu. Úvod do jazyka C, Vstup a výstup, Tvorba procesorového kódu. Zdrojový kód, objektový kód, linkování, kompilace. Datové typy, operátory, výrazy, konstanty. Operátory - aritmetické, přiřazovací,relační,logické, podmíněný výraz , typová konverze Příkazy a bloky. Operátor čárka. Příkay break a continue. Registrové proměnné Příkazy cyklu for a do-while. Jednoduché programy. Pole. Funkce. Automatické a externí proměnné. Rekurzívní funkce Ukazatelé, pole, funkce. Ukazatelé a adresy, Ukazatelé a argumenty funkcí. Ukazatelé a pole. Ukazatelé a konstanty. Argumenty povelového řádku. Inicializace polí a polí ukazatelů. Knihovny standardních funkcí jazyka C. Tvorba knihovních funkcí v prostředí Code Warrior Struktury, třídy, uniony, bitová pole, Struktury a třídy, Pole struktur,Typ union, Anonymní typ union, Bitová pole. Objektově orientované programování. Třídy a objekty v C++. Modifikátory přístupu. Dědičnost. Polymorfismus v C++, včasná a pozdní vazba. Přetížení metod a funkcí. Šablony. Počítačové laboratoře: Náplň počítačových cvičení Seznámení se z vývojovým prostředím CodeWarrior. Vytvoření projektu. První program. Kompilátor jazyka C. Práce se základními datovými typy a konstantami. Příklady na využití aritmetických, přiřazovacích, relačních, logických operátorů a podmíněného výrazu. Přetypování. Praktická ukázka využití volání funkce hodnotou a odkazem, příklad: funkce pro umocňování, rekurzivní funkce. Plnohodnotný simulátor procesoru. Simulace vstupů, výstupů a rozhraní. Ladění kódu - krokování programu, breakpoint, watchpoint Příklad na ukázku bloku příkazů, použití lokálních a globálních proměnných. Využití operátoru čárka, break, continue, registrovaných proměnných. Práce s jednorozměrnými typy polí, sčítání matic - dvojrozměrné pole, vícerozměrné pole Knihovny standardních funkcí jazyka C, možnosti využití knihoven funkcí. Práce s ukazateli a použití ukazatelů - vstupních parametrů funkcí. Práce s ukazatelem na pole - příklad na zpracování řetězce, s ukazateli na funkce. Inicializace polí a polí ukazatelů.Vstup argumentů do aplikace přes příkazový řádek Kopírování souborů, práce se znaky, způsob zpracování textových a binárních souborů Práce s ukazateli a vícerozměrná pole. Vnitřní funkce, dosazené parametry. Používání struktur - množiny různých datových typů, práce s polem struktur. Využití typu union a bitového pole. Příklad na vytvoření dynamického seznamu.

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

Kombinovaná forma (platnost od: 2010/2011 zimní semestr, platnost do: 2020/2021 letní semestr)
Název úlohyTyp úlohyMax. počet bodů
(akt. za podúlohy)
Min. počet bodůMax. počet pokusů
Klasifikovaný zápočet Klasifikovaný zápočet 100 (100) 51 2
        První test Písemka 20  10 2
        Druhý test Písemka 30  15 2
        Projekt Projekt 50  26 1
Rozsah povinné účasti:

Zobrazit historii

Podmínky absolvování předmětu a účast na cvičeních v rámci ISP:

Zobrazit historii

Výskyt ve studijních plánech

Akademický rokProgramObor/spec.Spec.ZaměřeníFormaJazyk výuky Konz. stř.RočníkZLTyp povinnosti
2019/2020 (N3943) Mechatronika (3906T006) Mechatronické systémy P čeština Ostrava 1 povinný stu. plán
2019/2020 (N3943) Mechatronika (3906T006) Mechatronické systémy K čeština Ostrava 1 povinný stu. plán
2018/2019 (N3943) Mechatronika (3906T006) Mechatronické systémy P čeština Ostrava 1 povinný stu. plán
2018/2019 (N3943) Mechatronika (3906T006) Mechatronické systémy K čeština Ostrava 1 povinný stu. plán
2017/2018 (N3943) Mechatronika (3906T006) Mechatronické systémy P čeština Ostrava 1 povinný stu. plán
2017/2018 (N3943) Mechatronika (3906T007) Automobilová elektronika P čeština Ostrava 1 povinný stu. plán
2017/2018 (N3943) Mechatronika (3906T006) Mechatronické systémy K čeština Ostrava 1 povinný stu. plán
2017/2018 (N3943) Mechatronika (3906T007) Automobilová elektronika K čeština Ostrava 1 povinný stu. plán
2016/2017 (N3943) Mechatronika (3906T006) Mechatronické systémy P čeština Ostrava 1 povinný stu. plán
2016/2017 (N3943) Mechatronika (3906T006) Mechatronické systémy K čeština Ostrava 1 povinný stu. plán
2016/2017 (N3943) Mechatronika (3906T007) Automobilová elektronika P čeština Ostrava 1 povinný stu. plán
2016/2017 (N3943) Mechatronika (3906T007) Automobilová elektronika K čeština Ostrava 1 povinný stu. plán
2015/2016 (N3943) Mechatronika (3906T006) Mechatronické systémy P čeština Ostrava 1 povinný stu. plán
2015/2016 (N3943) Mechatronika (3906T007) Automobilová elektronika P čeština Ostrava 1 povinný stu. plán
2015/2016 (N3943) Mechatronika (3906T007) Automobilová elektronika K čeština Ostrava 1 povinný stu. plán
2015/2016 (N3943) Mechatronika (3906T006) Mechatronické systémy K čeština Ostrava 1 povinný stu. plán
2015/2016 (N3943) Mechatronika (3906T007) Automobilová elektronika P angličtina Ostrava 1 povinný stu. plán
2014/2015 (N3943) Mechatronika (3906T006) Mechatronické systémy P čeština Ostrava 1 povinný stu. plán
2014/2015 (N3943) Mechatronika (3906T007) Automobilová elektronika P čeština Ostrava 1 povinný stu. plán
2014/2015 (N3943) Mechatronika P čeština Ostrava 1 povinný stu. plán
2014/2015 (N3943) Mechatronika (3906T007) Automobilová elektronika K čeština Ostrava 1 povinný stu. plán
2014/2015 (N3943) Mechatronika (3906T006) Mechatronické systémy K čeština Ostrava 1 povinný stu. plán
2013/2014 (N3943) Mechatronika (3906T006) Mechatronické systémy P čeština Ostrava 1 povinný stu. plán
2013/2014 (N3943) Mechatronika (3906T006) Mechatronické systémy P čeština Ostrava 1 povinný stu. plán
2013/2014 (N3943) Mechatronika (3906T007) Automobilová elektronika P čeština Ostrava 1 povinný stu. plán
2013/2014 (N3943) Mechatronika (3906T006) Mechatronické systémy K čeština Ostrava 1 povinný stu. plán
2013/2014 (N3943) Mechatronika (3906T007) Automobilová elektronika K čeština Ostrava 1 povinný stu. plán
2012/2013 (N3943) Mechatronika (3906T006) Mechatronické systémy P čeština Ostrava 1 povinný stu. plán
2012/2013 (N3943) Mechatronika (3906T007) Automobilová elektronika P čeština Ostrava 1 povinný stu. plán
2012/2013 (N3943) Mechatronika (3906T006) Mechatronické systémy K čeština Ostrava 1 povinný stu. plán
2012/2013 (N3943) Mechatronika (3906T007) Automobilová elektronika K čeština Ostrava 1 povinný stu. plán
2011/2012 (N3943) Mechatronika (3906T007) Automobilová elektronika P čeština Ostrava 1 povinný stu. plán
2011/2012 (N3943) Mechatronika (3906T006) Mechatronické systémy P čeština Ostrava 1 povinný stu. plán
2011/2012 (N3943) Mechatronika (3906T006) Mechatronické systémy K čeština Ostrava 1 povinný stu. plán
2011/2012 (N3943) Mechatronika (3906T007) Automobilová elektronika K čeština Ostrava 1 povinný stu. plán
2010/2011 (N3943) Mechatronika (3906T006) Mechatronické systémy P čeština Ostrava 1 povinný stu. plán
2010/2011 (N3943) Mechatronika (3906T007) Automobilová elektronika P čeština Ostrava 1 povinný stu. plán
2010/2011 (N3943) Mechatronika (3906T006) Mechatronické systémy K čeština Ostrava 1 povinný stu. plán
2010/2011 (N3943) Mechatronika (3906T007) Automobilová elektronika 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

Hodnocení Výuky



2011/2012 zimní