Logo ČVUT
CZECH TECHNICAL UNIVERSITY IN PRAGUE
STUDY PLANS
2019/2020

Programming and Algorithmics 1

Login to KOS for course enrollment Display time-table
Code Completion Credits Range Language
BIE-PA1 Z,ZK 6 2P+2R+2C
Lecturer:
Jan Trávníček, Ladislav Vagner (guarantor)
Tutor:
Jan Trávníček, Ladislav Vagner (guarantor), Tomáš Dejmek, Peter Guľa, Tomáš Pecka, Radek Tomšů
Supervisor:
Department of Theoretical Computer Science
Synopsis:

Students learn to construct algorithms for solving basic problems and write them in the C language. They understand data types (simple, structured, pointers), expressions, statements, functions, concept of recursion. They learn the basics of algorithm complexity analysis. They know fundamental algorithms for searching, sorting, and manipulating with linked lists.

Requirements:

None.

Syllabus of lectures:

1. Algorithm, program, programming languages. Development environments.

2. Variables, assignment statement, input and output for integer data types.

3. Data types for real numbers. Expressions.

4. Control structures, branching, cycles.

5. Functions, input/output parameters.

6. Decomposition of a problem into subproblems, recursion.

7. Arrays, strings.

8. Pointers, dynamic variables.

9. Files.

10. Complexity of algorithms, sorting and searching.

11. Structures, structured files.

12. Linked lists.

13. Modular programming, other features of C.

Syllabus of tutorials:

1. Numeral systems, conversions. Bit, byte, word, double word. Development environments.

2. Integer types, variables, assignments, I/O. Representation of integers, two?s complement code.

3. Real data types. Representation of floating-point numbers. Expressions.

4. Conditional statements.

5. Cycles, processing of sequences.

6. Functions.

7. Recursive functions.

8. Arrays and strings.

9. Pointers and dynamic variables.

10. Files.

11. Complexity of algorithms, examples of algorithms with various complexities.

12. Structures, structured files.

13. Linked lists.

Study Objective:

The module provides fundamental algorithmics and procedural programming skills that are crucial for further studying.

Study materials:

1. Brassard, G., Bratley, P. ''Fundamentals of Algorithmics.'' Prentice Hall, 1995. ISBN 0133350681.

2. Sedgewick, R. ''Algorithms in C, Parts 1--5.'' Addison Wesley, 2001. ISBN 0201756080.

Note:
Further information:
https://moodle-vyuka.cvut.cz/course/view.php?id=2204
Time-table for winter semester 2019/2020:
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
Mon
Tue
roomTH:A-s135
Trávníček J.
07:30–09:00
(lecture parallel1)
Thákurova 7 (FSv-budova A)
As135
Fri
Thu
roomTH:A-s134
Trávníček J.
09:15–10:45
(lecture parallel1
parallel nr.101)

Thákurova 7 (FSv-budova A)
As134
Fri
roomT9:349
Guľa P.
Tomšů R.

07:30–09:00
(lecture parallel1
parallel nr.101)

Dejvice
NBFIT PC učebna
roomT9:348
Guľa P.
Dejmek T.

09:15–10:45
(lecture parallel1
parallel nr.101)

Dejvice
NBFIT PC ucebna
Time-table for summer semester 2019/2020:
Time-table is not available yet
The course is a part of the following study plans:
Data valid to 2020-01-19
For updated information see http://bilakniha.cvut.cz/en/predmet1447406.html