Advanced computer programming 2400-M2IEZPR
1. Basic concepts of programming: variables, data types, functions, control statements.
2. Access to the text terminal, streams cin and cout.
3. Arrays, template vector.
4. Simple algorithms: finding the greatest element of a table, decomposition of an integer into prime factors.
5. C-style strings, class string. Basic operations on text. String-searching algorithms.
6. Recursion.
7. Classes.
8. File access, reading and writing into file.
9. Sorting algorithms, computational complexity.
10. Data structures: lists and trees. Classes list, set and map.
11. Graph search algorithms.
12. Coursework: presentation of topics.
Type of course
Course coordinators
Learning outcomes
1. They know basic C++ programming concepts, as variables, functions, control statements, etc.
2. They know basic classes and templates from Standard C++ Library (vector, string, streams, containers, etc.).
3. They can know and understand classical algoriths for sorting and searching.
4. They know basic data structures.
5. They can use these skills to write a simple computer program.
KW01, KW02, KW03, KU01, KU02, KU03, KK01, KK02, KK03
Assessment criteria
They have to pass a test (20% points) and a final exam (80% points). Moreover, they are expected to write a coursework, which can change the final mark by not more than 1 grade.
Bibliography
S. B. Lippman, C++ Primer,
T. L. Hansen, The C++ answer book,
B. Stroustrup, The C++ Programming Language,
N. Wirth, Algorithms & Data Structures
Additional information
Information on level of this course, year of study and semester when the course unit is delivered, types and amount of class hours - can be found in course structure diagrams of apropriate study programmes. This course is related to the following study programmes:
Additional information (registration calendar, class conductors, localization and schedules of classes), might be available in the USOSweb system: