Back to All Events

Algorithmic Techniques and Programming


Study program: F3 Computer Science, Educational and professional program "Computer Science and Technology”

Degree: Bachelor

Type of module: lectures, practical work

Lecturer: Assoc. Prof., PhD Oleksandr Khriapkin

Language: English

Credit Points: 6 ECTS

Description:
The purpose of the discipline is to teach students to use the basic techniques of programming applications. To take into account modern concepts and trends in the development of programming technologies, to solve scientific and technical problems of varying complexity with the help of computers.
The discipline includes the following content modules:
Content module 1. Basics of C++ programming .
Topic 1. Purpose and tasks of the discipline. Computer architecture. Topic 2. Binary and hexadecimal number systems. Storage of numbers. Overview of modern programming languages.
Topic 3. Concept of algorithm. Typical algorithmic structures of programming. Visualization of algorithms. Block diagrams.
Pseudocodes.
Topic 4. General characteristics of the C++ language. Structure of C++ programs. C++ data types. Declaration of variables and constants. Casting data types. Arithmetic, logical and bitwise operations in the C++ language.
Content module 2. Structural programming.
Topic 5. Control constructions of the C++ language. Selection structures, selection operators. Loop operators. The concept of structural programming.
Topic 6. Arrays. Declaration and use of arrays. Pointers. Operations on pointers. Relationship between arrays and pointers. Dynamic allocation and release of memory.
Topic 7. Functions: announcement, challenge, prototypes. The data type is void. Methods of passing parameters. Link.
Topic 8. Transferring arrays and pointers to functions. Pointers to functions. Constant parameters, default parameters. Data sorting and sorting algorithms.
Topic 9. Recursive functions. Comparison of recursive and iterative approaches.
Topic 10. Concepts of procedural and multi-module programming.
Scope of identifiers. Top-down and bottom-up programming. Content module 3. Data input/output. Organization of processing derived compound data types.
Topic 11. Stream input/output of data. Stream manipulators. File streaming I/O.
Topic 12. Lines. Relationship between strings and arrays. Features of string initialization and processing. Functions of the C++ standard library for string processing.
Topic 13. Application of stdio.h standard library functions for data output. Formatted input - data output. File input/output.
Topic 14. Derived data types: lists, structures, associations, bit fields.
Passing data of derived types to a function.
Topic 15. Simple data structures: queue, stack. Scope, means of implementation in C++
Topic 16. Structures with self-addressing. Implementation of queues and stacks using such structures. Linear and cyclic lists. 
Topics of laboratory work:
1. Learning the possibilities of the Microsoft Visual C++ environment for creating, broadcasting and debugging programs.
2. Learning the capabilities of the C++ language when working with arrays and functions.
3. Studying the capabilities of the C++ language when organizing streaming file input-output.
4. Studying the capabilities of the C++ language in the organization ofstring and symbol processing.
5. Studying the capabilities of the C++ language when working with data structures.

Previous
Previous
1 September

Project teams management

Next
Next
1 September

Special Sections of the Theory of Algorithms