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í
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)
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 Písemka 30  15
        Projekt Projekt 50  26
Rozsah povinné účasti:

Zobrazit historii

Výskyt ve studijních plánech

Akademický rokProgramObor/spec.Spec.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