Upon successful completion of the course student:

- Uses basic programming principles and algorithmic methods, namely: General principles of programming; Basics of programming in C    using OOP and templates; Advanced data structures; Various algorithms using dynamic programming, greedy techniques and recourse;

- Creates software using C    language;

- Uses appropriate data structures and algorithms to solve a specific problem