Course detail

Introduction to Programming and Algorithmization

FSI-1PA Acad. year: 2025/2026 Winter semester

The course focuses on teaching programming in the MATLAB high-level programming language and explaining the basic principles of algorithmization. The content is adapted to the specific needs of mechatronics, especially data processing, visualization, image processing, versioning, user interface design and working with hardware. The acquired knowledge in programming and algorithmization serves as a basis for learning other programming languages needed in the following semesters.

Language of instruction

Czech

Number of ECTS credits

6

Entry knowledge

Vectors and matrices, matrix calculus, Propositional calculus, basic computer skills.

Rules for evaluation and completion of the course

The course grade is based on a standard 0-100 point scale. Students can earn up to 80 points for three tests during the semester (10 points, 30 points and 40 points) and an additional 20 points for the preparation and defense of a semester project. The assessment takes into account not only the fulfilment of the functional requirements but also the level of workmanship. Attendance at tutorials is compulsory and attendance is monitored. Attendance at lectures is optional but recommended.

Aims

The goal of the subject is to get and develop the ability to make algorithms and solve the most common engineering and mathematical problems through practical experience, e.i. to decompose a complex task to a set of simple tasks so that it can be written in the MATLAB syntax.
After finishing this subject, students are expected to be able to independently use the MATLAB language to solve various engineering tasks. Basic knowledge gained here serves as a basis for studying (even self-studying) other languages in different applications. E.g. the C language for the programming of microcontrollers.

Study aids

[1] Algorithms: Fundamental Techniques. Dostupne online: http://en.wikibooks.org/wiki/Algorithms (EN)

[2] KNUTH, D.: The Art of Computer Programming, Volume 1: Fundamental Algorithms, Addison-Wesley, 2019

[3] Stormy Attaway: Matlab: A Practical Introduction to Programming and Problem Solving, Butterworth-Heinemann, 2019 (EN)

The study programmes with the given course

Programme B-MET-P: Mechatronics, Bachelor's, compulsory

Type of course unit

 

Lecture

26 hours, optionally

Syllabus


  1. Introduction

  2. Variable, working with matrices, script

  3. Control structures (conditions, cycles), logical conditions

  4. Vectorization, graphing, functions

  5. Overview of data types, implicit conversion, working with text, random numbers, implicit expansion, recursion

  6. What interesting things can be done in MATLAB and Simulink?

  7. Project assignment

  8. OOP 1

  9. OOP 2

  10. Fundamentals of image processing

  11. Graphical user interface

  12. Versioning and nice code

  13. Design patterns and techniques (including recursion)

  14. Overview of different programming languages

Computer-assisted exercise

26 hours, compulsory

Syllabus


  1. Introduction

  2. Variable, working with matrices, script

  3. Control structures (conditions, cycles), logical conditions

  4. Vectorization, graphing, functions

  5. Overview of data types, implicit conversion, working with text, random numbers, implicit expansion, recursion

  6. What interesting things can be done in MATLAB and Simulink?

  7. OOP 1

  8. OOP 2

  9. Fundamentals of image processing

  10. Graphical user interface

  11. Versioning and nice code

  12. Design patterns and techniques (including recursion)

  13. Overview of different programming languages