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

Programming and Algorithmics 2

Přihlášení do KOSu pro zápis předmětu Zobrazit rozvrh
Kód Zakončení Kredity Rozsah Jazyk výuky
BIE-PA2.21 Z,ZK 7 2P+1R+2C anglicky
Přednášející:
Jan Trávníček (gar.)
Cvičící:
Jan Trávníček (gar.), Tomáš Dejmek, Jiří Jirásek
Předmět zajišťuje:
katedra teoretické informatiky
Anotace:

Students know the instruments of object-oriented programming and are able to use them for specifying and implementing abstract data types (stack, queue, enlargeable array, list, set, table). They learn these skills using the C++ programming language and are introduced to all C++ features needed in object-oriented programming (e.g., template programming, copying/moving of objects, operator overloading, inheritance, polymorphism).

Požadavky:

Fundamentals of algorithmics and C.

Osnova přednášek:

1. From C to C++, non-object-oriented extensions.

2. Programming styles, introduction to object-oriented programming.

3. Classes and objects in the C++ language.

4. Overloaded operators in C++.

5. Copying, copy constructor in C++.

6. Selected STL components.

7. Inheritance, polymorphism in C++.

8. Abstract classes in C++.

9. Class and function templates in C++.

10. Exceptions and exception handling in C++. Abstract data

types stack and queue in C++.

11. Abstract data types enlargeable array, list, set, and table in C++.

12. Associative data structures.

13. C++11 extensions.

Osnova cvičení:

1. Introduction to C++

2. OOP basics

3. Visibility, constructor, destructor, modules

4. Operator overloading

5. Shallow vs. deep copy

6. STL containers

7. Inheritance

8. Abstract methods

9. Fuction a class template

10. Exceptions and C++11

11. C++11

12. Practice (extra tasks)

12. Reserve

Cíle studia:

The aim of the course is to teach students to use the means of object-oriented programming and use them in the specification and implementation of abstract data types with emphasis on implementation using link structures. The course is a compulsory subject of the program, which is followed by a number of other courses.

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, ISBN978-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/BIE-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:A-s134
Trávníček J.
14:30–16:00
(přednášková par. 1)
Thákurova 7 (FSv-budova A)
As134
místnost TH:A-s134
Trávníček J.
16:15–17:45
LICHÝ TÝDEN

(přednášková par. 1
paralelka 101)

Thákurova 7 (FSv-budova A)
As134
Út
místnost TK:PU1
Dejmek T.
Jirásek J.

16:15–17:45
(přednášková par. 1
paralelka 101)

Dejvice
NTK PU 1
místnost TK:PU1
Dejmek T.
Jirásek J.

18:00–19:30
(přednášková par. 1
paralelka 101)

Dejvice
NTK PU 1
St
Čt

Předmět je součástí následujících studijních plánů:
Platnost dat k 6. 2. 2023
Aktualizace výše uvedených informací naleznete na adrese https://bilakniha.cvut.cz/cs/predmet6698906.html