====== B6B36PCC -- Programování v C/C++ ======
[[https://cw.felk.cvut.cz/upload/|Odevzdávací systém]]
/* [[https://cw.felk.cvut.cz/forum/forum-1725.html|Diskusní fórum]] */
[[https://intranet.fel.cvut.cz/cz/education/bk/predmety/66/26/p6626506.html|Popis předmětu na FEL]]
[[https://fel.cvut.cz/cz/education/rozvrhy-ng.B251/public/html/predmety/66/26/p6626506.html|Rozvrh B6B36PCC]]
[[https://moodle.fel.cvut.cz/course/view.php?id=9754|Kontrolní test B6B36PCC]]
/* [[https://moodle.fel.cvut.cz/course/view.php?id=8256|Stránky na Moodle]] */
---------------
Předmět B6B36PCC se zabývá výukou programovacího jazyka C%%++%%. Látka je určena pro mírně pokročilé programátory, předchozí znalost C ani C%%++%% není nutná. Cílem je nejenom seznámení studentů se základy jazyka C%%++%% a jeho praktickým využitím, ale zejména pochopení některých základních konceptů práce s pamětí.
Předmět je zakončen **zápočtem** a **zkouškou**.
===== Zápočet =====
Pro získání zápočtu je nutné úspěšně odevzdat všechny povinné domácí úkoly i semestrální práci.
Pro vyšší bodové hodnocení je možné vypracovat nepovinné jednohubky a absolvovat kontrolní test v průběhu semestru.
Zápočty se budou zapisovat do KOSu po splnění povinností až v prvním týdnu v lednu. Dřívější zapsání zápočtu není možné!
===== Zkouška =====
Podmínka absolvování zkoušky je nutná pro úspěšné absolvování předmětu, a to samozřejmě i v případě, že v průběhu semestru získáte více než 50 bodů.
Na zkoušce se píše písemný test, který obsahuje několik bodovaných otázek (celkem až 40 bodů). Vyhrazený čas je zpravidla 60 minut. Po odevzdání vyplněných testů je cca 1 hodina věnována na opravy. Ústní zkouška se nekoná. K nahlédnutí budou testy a jejich výsledky. Pro detailní podmínky absolvování zkoušky navštivte [[start#pisemny_zkouskovy_test|tento odstavec]]
Zkoušku lze v souladu se [[https://www.cvut.cz/sites/default/files/content/74c76d2e-7f4d-4cb1-ac28-b0765c7f88f2/cs/20200624-studijni-a-zkusebni-rad-pro-studenty-cvut-v-praze-iii-uplne-zneni-ucinnost-od-11-3-2020.pdf | Studijním a zkušebním řádem pro studenty ČVUT v Praze]] (článek 6, odstavec 1) absolvovat pouze s uděleným zápočtem.
Sešity, vlastní poznámky, ani žádné další informační zdroje **nejsou** pro vypracování zkouškového testu **povoleny**.
===== Hodnocení =====
Hodnocení je dáno celkovým součtem bodů za domácí úkoly, semestrální práci a písemný test.
^ Část ^ Maximum bodů ^ Požadované minimum ^
| [[courses:b6b36pcc:ukoly:|Domácí úkoly]] | 40 | 15, po započtení všech penalizací za pozdní odevzdání |
| [[courses:b6b36pcc:ukoly:sem_prace|Semestrální práce]] | 20 | 10 |
| Kontrolní test | 8 | 0 |
^ Celkem k zápočtu ^ 68 ^ 25 ^
| Písemný zkouškový test | 40 | 20 (5 teoretická a 10 praktická část) |
^ Celkem ^ 108 ^ 50 ((50 bodů odpovídá hodnocení E - dostatečně.)) ^
Bez splnění požadavku 25 bodů na zápočet nelze vykonat zkoušku.
Výsledná známka se řídí běžnou bodovou tabulkou:
^ Známka ^ Bodové rozmezí ^ Slovní \\ hodnocení ^
| A | 90 a více | výborně |
| B | >= 80 | velmi dobře |
| C | >= 70 | dobře |
| D | >= 60 | uspokojivě |
| E | >= 50 | dostatečně |
| F | méně než 50| nedostatečně |
===== Domácí úkoly =====
Během semestru budou zadány 3 povinné domácí úkoly, 10 nepovinných "jednohubek" a jedna semestrální práce. Úkoly budou vyvěšeny na stránkách
předmětu a budou se odevzdávat do odevzdávacího systému (BRUTE), kde budou automaticky hodnoceny. Jednohubky se budou zadávat během cvičení,
a též odevzdávat do BRUTE.
Semestrální práce se bude odevzdávat přes BRUTE a bude hodnocena cvičícími.
Celkem lze za úkoly získat až 40 bodů, za semestrální práci až 20 bodů.
Úspěšně odevzdaný úkol je takový, za který získáte alespoň 50% bodů předtím, než se započte penalizace za pozdní odevzdání.
Penalizace je automaticky započítána v BRUTE - za první dva dny zpoždění 1 bod, za další dva dny 2 body, následně 5 až plný počet bodů.
[[https://cw.fel.cvut.cz/wiki/courses/b6b36pcc/ukoly/start|Úkoly]]
===== Přednášky =====
[[https://cw.fel.cvut.cz/wiki/courses/b6b36pcc/prednasky/start | Přednášky ]]
===== Cvičení =====
[[https://cw.fel.cvut.cz/wiki/courses/b6b36pcc/cviceni/start|Cvičení]]
===== Písemný zkouškový test =====
* Celkové hodnocení testu je v rozsahu 0-40 bodů.
* Písemný zkouškový test se skládá ze sady teoretických otázek (0-15 bodů) a praktických úloh (0-25 bodů).
* Podmínkou pro úspěšné absolvování testu je dosažení alespoň 5 bodů z teoretických otázek a zároveň alespoň 10 bodů z praktických úloh. Celkově je nutné test splnit alespoň za 20 bodů. //Příklad: 3 body z teoretických otázek, 22 bodů z praktických otázek znamenají neúspěch, protože student nedosáhl požadovaného minima z teoretických otázek. Stejně tak hodnocení 5 bodů z teoretických otázek a 12 z praktických znamená neúspěch, protože student nedosáhl požadovaného minima z celé zkoušky.//
* Podmínkou pro účast na zkoušce je zápočet v KOSu. K tomu je třeba odevzdat semestrální práci nejpozději týden před termínem, kterého se chcete účastnit. Výjimkou je předtermín, kdy je třeba odevzdat semestrální práci nejpozději 14.12.2025 a upozornit svého cvičícího o zájmu účasti na předtermínu.
* Povolenými pomůckami jsou pouze psací potřeby. // Není tedy dovoleno používat žádné poznámky, telefon, chytré hodinky nebo libovolné podobné zařízení. //
* Ústní zkouška není.
Nabízíme několik testů na ukázku, viz
[[https://cw.fel.cvut.cz/wiki/courses/b6b36pcc/testy/ukazkovy_test_1|Test 1]]
[[https://cw.fel.cvut.cz/wiki/courses/b6b36pcc/testy/ukazkovy_test_2|Test 2]]
===== Literatura =====
** * Doporučená literatura anglicky
**
* Stanley B. Lippman, Josée Lajoie, Barbara E. Moo: C++ Primer, 5. edice. Addison-Wesley 2012, ISBN-13: 978-0321714114. Pozor: Nezaměňovat s C++ Primer Plus od S. Prata
* Bjarne Stroustrup: Programming, Principles and Practice Using C++, 2. edice. Addison-Wesley 2014, ISBN 978-0-321-99278-9. Velká kniha, bere to opravdu od začátku
* Bjarne Stroustrup: Tour of C++. Addison-Wesley 2013. ISBN 978-0321958310. Tenký svazek, přehled toho co by měl C++ programátor umět
** * Česká literatura
**
* Miroslav Virius: Jazyky C a C++. Grada 2011, ISBN 978-80-247-3917-5. Jedná se spíše o referenční příručku, nežli o učebnici. Pouze pokud chcete českojazyčnou literaturu.
** * Reference:
**
* cppreference http://en.cppreference.com/w/
** * Přednášky na různá témata:
**
* https://github.com/CppCon
** * Pokročilá literatura
**
* S. Meyers: Modern Effective C++. Ostatní Eff. C++ knížky jsou též zajímavé
* H. Sutter: Exceptional C++. More Exceptional C++ je dobré pokračování
* A. Stepanov: Elements of Programming. Silně matematické, C++ jen okrajově
** * Další česká literatura
**
* Pavel Herout: Učebnice jazyka C. 6. vyd. Kopp, České Budějovice 2009, ISBN 978-80-7232-383-8, 280 stran.
* Pavel Herout: Učebnice jazyka C – 2.díl. 4. vyd. Kopp, České Budějovice 2009, ISBN 978-80-7232-367-8, 280 stran.
* Miroslav Virius: Od C k C++. Kopp, České Budějovice 2000. ISBN 80-7232-110-2. 227 stran.
* Miroslav Virius: Jazyky C a C++. Kompletní kapesní průvodce programátora. Grada 2011, ISBN: 978-80-247-3917-5. 518 stran.
* Miroslav Virius: Pasti a propasti C++. 2. aktualizované a doplněné vydání: Computer Press, Brno 2005. ISBN 80-251-0509-1. 376 stran.
* Miroslav Virius: 1001 tipů a triků pro C++. Computer Press, Brno 2011. ISBN 978-80-251-2941-8. ISBN 978-80-251-2941-9. 472 stran.
* A další, a další …
** * Proč C++?
**
* https://www.tiobe.com/tiobe-index/