456-0523/02 – Programování v C/C++ (CPP)
Garantující katedra | Katedra informatiky | Kredity | 4 |
Garant předmětu | doc. Mgr. Jiří Dvorský, Ph.D. | Garant verze předmětu | doc. RNDr. Jindřich Černohorský, CSc. |
Úroveň studia | pregraduální nebo graduální | Povinnost | povinně volitelný |
Ročník | 2 | Semestr | letní |
| | Jazyk výuky | čeština |
Rok zavedení | 2007/2008 | Rok zrušení | 2010/2011 |
Určeno pro fakulty | FEI | Určeno pro typy studia | bakalářské |
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. Ve cvičeních těsná vazba na předmět Základy algoritmizace.
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. Ve cvičeních těsná vazba na předmět Základy algoritmizace.
Povinná literatura:
Doporučená literatura:
Forma způsobu ověření studijních výsledků a další požadavky na studenta
Podmínky udělení zápočtu:
Získat alespoň 10 bodů za semestrální projekt a 7 bodů za domácí příklady tj. celkem 17 bodů za zápočet z 35 možných bodů
E-learning
Další požadavky na studenta
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
Výskyt ve studijních plánech
Výskyt ve speciálních blocích
Hodnocení Výuky