The course aims to introduce students to the main concepts of programming. It emphasizes the principles and means of the procedural programming, and in particular on the control structures (sequence, selection, repetition), procedure abstraction, abstraction of data (data types and structures and their representation). The most useful algorithms (searching, sorting, iteration, recursive algorithms, etc. for processing the studied data structures) are studying. These algorithms are illustrated on programming tasksincl. related to problems in the field of information and telecommunication technologies and signal processing engineering. Particular attention is paid to the structural design and programming methods, considering approaches to analyse and compile algorithms, strategies for selection of abstract data types and to enhance efficiency in the implementation of specific algorithms.

The exercises illustrate the lecture material. They are designed for practical learning of the principles and concepts studied through the C ++ programming language.