| Akademický rok 2022/2023 |
| Garant: | Ing. Pavla Sehnalová, Ph.D. | |||
| Garantující pracoviště: | ÚM | |||
| Jazyk výuky: | čeština | |||
| Cíle předmětu: | ||||
| Cílem předmětu je seznámit studenty s aktuálními programovacími technikami až po normu C++19. V C++ existuje mnoho numerických knihoven pro vědeckotechnické výpočty. Studenti budou schopni vyvíjet moderní vědecké aplikace. | ||||
| Výstupy studia a kompetence: | ||||
| Studenti získají základní dovednosti a zkušenosti při vytváření a ladění programů s využitím programovacího jazyka C++. | ||||
| Prerekvizity: | ||||
| Předpokládají se základní znalosti a zkušenosti s programovacím jazykem (C#, Java). | ||||
| Obsah předmětu (anotace): | ||||
| C++ je moderní programovací jazyk se zaměřením na vysoký výkon. Je široce používán ve velmi odlišných kontextech a má vynikající podporu jak v nástrojích, tak i v knihovnách. Předmět poskytuje základy jazyka C++ a úvod do objektově orientovaného programování. Seznámí studenty s třídami, objekty, pojmem dědičnosti aj. | ||||
| Metody vyučování: | ||||
| Předmět je vyučován formou přednášek, které mají charakter výkladu základních principů a teorie dané disciplíny. Cvičení je zaměřeno na praktické zvládnutí látky probrané na přednáškách. | ||||
| Způsob a kritéria hodnocení: | ||||
| Hodnocení předmětu sestává z bodů za semestrální projekt (prezentace funkčního programu v Java) (70 %) a z bodů za týdenní samostatné úlohy (30 %). Podmínkou udělení zápočtu je získání minimálně 50 % bodů ze semestrálního projektu. Za aktivní přínos ve výuce lze získat zvláštní ohodnocení. | ||||
| Vymezení kontrolované výuky a způsob jejího provádění a formy nahrazování zameškané výuky: | ||||
| Účast na přednáškách je žádoucí, účast ve cvičeních je povinná. Výuka probíhá podle týdenních rozvrhů. Způsob náhrady zameškané výuky je plně v kompetenci cvičícího. |
||||
| Typ (způsob) výuky: | ||||
| Přednáška | 13 × 1 hod. | nepovinná | ||
| Cvičení s počítačovou podporou | 13 × 2 hod. | povinná | ||
| Osnova: | ||||
| Přednáška | 1. Úvod do programovacího jazyka C++ 2. Základní datové typy 3. Pole a smyčky, ukazatele a odkazy 4. Třídy, objekty, dědičnost 5. Polymorfismus, zapouzdření 6. Metody, překrývání, abstraktní a virtuální metody 7. Základy vstupu, výstupu, datové proudy 8. Práce se soubory 9. Výjimky 10. Šablony 11. Kontejnery a algoritmy STL 12. Knihovny pro vědecko-technické výpočty 13. Rezerva přednášejícího |
|||
| Cvičení s počítačovou podporou | Cvičení je zaměřeno na praktické zvládnutí látky probrané v tématech na přednáškách, viz. Osnova přednášek. Důraz je kladen na schopnost samostatné práce, tj. na vytvoření jednoduché aplikace, často v rámci samostatných úkolů. Navíc se studenti seznámí s nástroji pro programovací jazyk C++: Visual studio 2019, MSBuild, CMake, vcpkg, Armadillo, Eigen, MKL atd. |
|||
| Literatura - základní: | ||||
| 1. Ivor Horton, Peter Van Weert Beginning C++17: From Novice to Professional Apress 2018 ISBN 1484233658 | ||||
| 2. Bjarne Stroustrup A Tour of C++ [2nd ed.] C++ In-Depth Series Addison-Wesley 2018 ISBN 978-0-13-499783-4 | ||||
| 3. George Em Karniadakis and Robert M. Kirby II Parallel Scientific Computing in C++ and MPI Cambridge University Press 2003 ISBN 9780511812583 | ||||
| 4. Yair Shapira Mathematical Objects in C++: Computational Tools in A Unified Object-Oriented Approach Chapman & Hall 2009 ISBN 9781439811474 | ||||
| 5. Miroslav Virius Programování v C++ od základů k profesionálnímu použití GRADA 2018 ISBN 978-80-271-0502-1 | ||||
| 6. Jacek Galowicz C++17 STL Cookbook Packt Publishing 2017 ISBN 978-1-78712-049-5 | ||||
| 7. William H. Press Numerical Recipes 3rd Edition: The Art of Scientific Computing Cambridge University Press 2007 ISBN10: 0521880688 | ||||
| Literatura - doporučená: | ||||
| 1. Joe Pitt-Francis, Jonathan Whiteley Guide to Scientific Computing in C++ (2nd edition) Springer 2017 ISBN 978-3-319-73132-2 | ||||
| 2. Mikael Olsson C++17 Quick Syntax Reference Apress 2018 ISBN 978-1-4842-3599-7 | ||||
| 3. Miroslav Virius Programovací jazyk C++ (1.-3. díl) ČVUT 2016 ISBN 9788001059616 | ||||
| Zařazení předmětu ve studijních programech: | |||||||||
| Program | Forma | Obor | Spec. | Typ ukončení | Kredity | Povinnost | St. | Roč. | Semestr |
| CŽV | prezenční studium | CZV Základy strojního inženýrství | -- | kl | 3 | Povinný | 1 | 1 | L |
| B-MAI-P | prezenční studium | --- bez specializace | -- | kl | 3 | Povinný | 1 | 3 | L |
Vysoké učení technické v Brně
Fakulta strojního inženýrství
Technická 2896/2,
616 69 Brno
IČ 00216305
DIČ CZ00216305
+420 541 141 111
+420 726 811 111 – GSM O2
+420 604 071 111 – GSM T-mobile