The book presents a systematic approach to solving programming problems of both a scientific and a practical nature. The methods presented pay particular attention to the principles of data structuring in the process of creating a program, taking various fields of application into account. It also covers sorting algorithms, recursive algorithms, dynamic data structures, and language structures and compilers.