Logo ČVUT
ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE
STUDIJNÍ PLÁNY
2022/2023

Programování a algoritmizace 2

Přihlášení do KOSu pro zápis předmětu Zobrazit rozvrh
Kód Zakončení Kredity Rozsah Jazyk výuky
BI-PA2.21 Z,ZK 7 2P+1R+2C česky
Přednášející:
Jan Trávníček (gar.), Ladislav Vagner, Josef Vogel
Cvičící:
Jan Trávníček (gar.), David Bernhauer, Daniel Breiner, Michal Dvořák, Michal Dvořák, Tomáš Heger, Radek Hušek, Roman Jelínek, František Kovář, Tomáš Krupička, Jaroslav Kříž, Jan Matoušek, Petr Pauš, Tomáš Pecka, Matyáš Rak, Róbert Selvek, Klára Schovánková, Petr Šťastný, Ondřej Štorc, Ladislav Vagner, Josef Vogel
Předmět zajišťuje:
katedra teoretické informatiky
Anotace:

Studenti se naučí základům objektově orientovaného programování a naučí se používat, specifikovat a implementovat abstraktní datové typy (rozšiřitelné pole, množina, seznam, tabulka). Programovacím jazykem je C++. Studenti jsou seznámeni se všemi rysy jazyka C++ důležitými pro objektově-orientované programování (např. šablonování, kopírování/přesouvání objektů, přetěžování operátorů, dědičnost tříd, polymorfismus).

Požadavky:

Základy algoritmizace a programování v jazyku C.

Osnova přednášek:

1. Od C k C++, neobjektová rozšíření.

2. Programovací styly, úvod do objektově-orientovaného programování.

3. Třídy a objekty v jazyce C++.

4. Přetížené operátory v jazyce C++.

5. Kopírování objektů v jazyce C++.

6. Vybrané komponenty knihovny STL.

7. Dědění. Polymorfismus v jazyce C++.

8. Abstraktní třídy v jazyce C++.

9. Šablony funkcí a tříd v jazyce C++.

10. Výjimky a jejich ošetření v jazyce C++. Abstraktní datové typy fronta a zásobník v C++.

11. Abstraktní datové typy rozšiřitelné pole, seznam, množina a tabulka v C++.

12. Asociativní datové struktury.

13. Rozšíření C++11.

Osnova cvičení:

1. Úvod do C++

2. Základy OOP, objekty a metody

3. Viditelnost, konstruktor, destruktor, moduly

4. Přetěžování operátorů

5. Mělká vs. hluboká kopie

6. STL kontejnery

7. Dědičnost

8. Abstraktní metody

9. Šablony funkcí a tříd

10. Výjimky a C++11

11. C++11

12. Procvičování

13. Rezerva

Cíle studia:

Cílem předmětu je naučit studenty používat prostředky objektově orientovaného programování a využívat je při specifikaci a implementaci abtstraktních datových typů s důrazem na implementaci pomocí spojových struktur. Předmět je povinným předmětem programu, na který navazuje řada dalších předmětů.

Studijní materiály:

1. Cormen T. H., Leiserson C. E., Rivest R. L., Stein C. : Introduction to Algorithms (3rd Edition). MIT Press, 2016. ISBN 978-0262033848.

2. Brassard G., Bratley P. : Fundamentals of Algorithmics (3rd Edition). Pearson, 2015. ISBN 978-0133350685.

3. Sedgewick R. : Algorithms (4th Edition). Addison Wesley, 2011. ISBN 978-0321573513.

4. Sedgewick R. : Algorithms in C++, Parts 1-4: Fundamentals, Data Structure, Sorting, Searching (3rd Edition). Addison-Wesley, 1998. ISBN 978-0201350883.

5. Virius M. : Programování v C++ - od základů k profesionálnímu použití. Grada, 2018. ISBN 978-80-271-0502-1.

Poznámka:

Informace o předmětu a výukové materiály naleznete na https://courses.fit.cvut.cz/BI-PA2/

Další informace:
https://courses.fit.cvut.cz/BI-PA2/
Rozvrh na zimní semestr 2022/2023:
Rozvrh není připraven
Rozvrh na letní semestr 2022/2023:
06:00–08:0008:00–10:0010:00–12:0012:00–14:0014:00–16:0016:00–18:0018:00–20:0020:00–22:0022:00–24:00
Po
místnost TH:D-1122
Vagner L.
Trávníček J.

09:15–10:45
(přednášková par. 1)
Thákurova 7 (FSv-budova A)
D1122
místnost T9:349
Pecka T.
Breiner D.

14:30–16:00
Dejvice
NBFIT PC učebna
místnost T9:155
Vogel J.
Trávníček J.

12:45–14:15
(přednášková par. 2)
Dejvice
Posluchárna
Út
místnost T9:349
Hušek R.
Dvořák M.

11:00–12:30
Dejvice
NBFIT PC učebna
místnost T9:349
Dvořák M.
Hušek R.

12:45–14:15
Dejvice
NBFIT PC učebna
místnost T9:349
Pauš P.
Štorc O.

14:30–16:00
Dejvice
NBFIT PC učebna
místnost T9:349
Jelínek R.
Kříž J.

16:15–17:45
Dejvice
NBFIT PC učebna
místnost T9:349
Kříž J.
Jelínek R.

18:00–19:30
Dejvice
NBFIT PC učebna
místnost T9:105
Vagner L.
12:45–14:15
(přednášková par. 3)
Dejvice
Posluchárna
St
místnost T9:349
Hušek R.
09:15–10:45
Dejvice
NBFIT PC učebna
místnost T9:155
Vagner L.
14:30–16:00
SUDÝ TÝDEN

(paralelka 1)
Dejvice
Posluchárna
místnost T9:155
Vagner L.
Trávníček J.

16:15–17:45
SUDÝ TÝDEN

(paralelka 2)
Dejvice
Posluchárna
místnost TK:PU1
Hušek R.
Štorc O.

11:00–12:30
Dejvice
NTK PU 1
místnost T9:155
Vagner L.
14:30–16:00
LICHÝ TÝDEN

(paralelka 3)
Dejvice
Posluchárna
místnost T9:155
Vagner L.
Trávníček J.

16:15–17:45
LICHÝ TÝDEN

(paralelka 4)
Dejvice
Posluchárna
místnost T9:349
Šťastný P.
Rak M.

12:45–14:15
Dejvice
NBFIT PC učebna
místnost T9:349
Bernhauer D.
Heger T.

16:15–17:45
Dejvice
NBFIT PC učebna
Čt
místnost T9:349
Selvek R.
07:30–09:00
Dejvice
NBFIT PC učebna
místnost T9:349

09:15–10:45
Dejvice
NBFIT PC učebna
místnost T9:349
Pauš P.
Breiner D.

11:00–12:30
Dejvice
NBFIT PC učebna
místnost T9:349
Vogel J.
Kovář F.

12:45–14:15
Dejvice
NBFIT PC učebna
místnost T9:349
Kovář F.
Vogel J.

14:30–16:00
Dejvice
NBFIT PC učebna
místnost T9:349
Breiner D.
16:15–17:45
Dejvice
NBFIT PC učebna

místnost T9:349
Dvořák M.
Schovánková K.

09:15–10:45
Dejvice
NBFIT PC učebna
místnost T9:349
Matoušek J.
Rak M.

12:45–14:15
Dejvice
NBFIT PC učebna
místnost TK:PU1
Matoušek J.
Krupička T.

14:30–16:00
Dejvice
NTK PU 1
Předmět je součástí následujících studijních plánů:
Platnost dat k 30. 1. 2023
Aktualizace výše uvedených informací naleznete na adrese https://bilakniha.cvut.cz/cs/predmet6692006.html