Logo ČVUT
CZECH TECHNICAL UNIVERSITY IN PRAGUE
STUDY PLANS
2024/2025
NOTICE: Study plans for the following academic year are available.

Programming and Algorithmics 1

Display time-table
Code Completion Credits Range Language
BIE-PA1.21 Z,ZK 7 2P+2R+2C English
Course guarantor:
Jan Trávníček
Lecturer:
Jan Trávníček
Tutor:
Tomáš Dejmek, Foivos Fioravantes, Radek Hušek, František Kovář, Štěpán Plachý, Jan Trávníček, Ladislav Vagner, Josef Vogel
Supervisor:
Department of Theoretical Computer Science
Synopsis:

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

Requirements:

None.

Syllabus of lectures:

1. Algorithms, programs and basic support of SW development.

2. Variables. Input and output in the C language.

3. Floating-point arithmetic. Expressions in the C language.

4. Flow control statements in the C language.

5. Functions in the C language.

6. Arrays and strings in the C language.

7. Structures and pointers in the C language.

8. Pointers and dynamic memory allocation in the C language.

9. Algorithm complexity. Searching and quadratic sorting algorithms.

10. Linked structures and trees in the C language.

11. Recursive algorithms, MergeSort, QuickSort introduction.

12. Working with files. Modular programming in the C language.

13. Abstract data types boolean, complex numbers, queue, stack.

Syllabus of tutorials:

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

2. Integer types, variables, assignments, I/O. Displaying integers, two's complement code.

3. Real data types. Displaying floating-point numbers. Expressions.

4. Conditional statements.

5. Cycles, processing sequences.

6. Functions.

7. Arrays and strings.

8. Pointers and dynamic variables.

9. Structures.

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

11. Recursive functions.

12. Linked lists.

13. Reserved.

Study Objective:

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

Study materials:

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. Kochan S.G. : Programming in C (4th Edition). Addison-Wesley, 2014. ISBN 978-0321776419.

Note:

Module information and study materials are available on https://courses.fit.cvut.cz/BIE-PA1/

Further information:
https://courses.fit.cvut.cz/BIE-PA1/
Time-table for winter semester 2024/2025:
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
roomT9:155
Trávníček J.
16:15–17:45
(lecture parallel1)
Dejvice
Tue
roomT9:349
Plachý Š.
Fioravantes F.

14:30–16:00
(lecture parallel1
parallel nr.101)

Dejvice
roomTK:PU1
Dejmek T.
Kovář F.

16:15–17:45
(lecture parallel1
parallel nr.101)

Dejvice
roomTK:PU1
Dejmek T.
Kovář F.

18:00–19:30
(lecture parallel1
parallel nr.101)

Dejvice
Wed
roomTK:BS
Vagner L.
09:15–10:45
(lecture parallel1
parallel nr.101)

Dejvice
Thu
Fri
Time-table for summer semester 2024/2025:
Time-table is not available yet
The course is a part of the following study plans:
Data valid to 2025-04-10
For updated information see http://bilakniha.cvut.cz/en/predmet6540506.html