450-2079 – Basics of Algorithms and Programming (ZAP)

Gurantor departmentDepartment of Cybernetics and Biomedical Engineering
Subject guarantordoc. Ing. Michal Prauzek, Ph.D.
Study levelundergraduate or graduate
Subject version
Version codeYear of introductionYear of cancellationCredits
450-2079/01 2019/2020 5
450-2079/02 2019/2020 5

Subject aims expressed by acquired skills and competences

The aim is to introduce students to the basic problems of algorithms and programming and to demonstrate implementation techniques introduced in higher programming languages. After completing the course, students will be able algorithmize basic tasks and create programs for solving simple problems using basic algorithmic structures in the general development environment. Students will understand the relationship between some features of computer architecture elements and their display in the C programming language needed to handle tasks using non-standard peripherals. Also students will be able to analyze and algorithmize simple problems using a structured approach.

Teaching methods

Lectures
Individual consultations
Tutorials
Experimental work in labs
Project work

Summary

The course is an introductory course on algorithmization and programming in all electrotechnical disciplines due to the wide applicability of language C. Students are familiar with the basic hardware elements of the computer and their relation to selected program constructions. Discussed algorithms and data structures are demonstrated, the students are encouraged to structured approach to algorithmic solved problems. Emphasis is placed on the practical implementation of algorithms and data structures. In the second part of the course students are familiar with solutions of common tasks in higher programming languages with emphasis on fast prototyping and development and solution of practical tasks using functional and object-oriented approach.

Compulsory literature:

KERNIGHAN, Brian W. a Dennis M. RITCHIE. The C programming language. 2nd ed. Englewood Cliffs, N.J.: Prentice Hall, c1988. SEDGEWICK, Robert, Kevin Daniel WAYNE a Robert. DONDERO. Introduction to programming in Python: an interdisciplinary approach. New York: Addison-Wesley, 2015. ISBN 9780134076430. NEWHAM, Cameron. a Bill. ROSENBLATT. Learning the bash Shell. 3rd ed. Sesbastopol, [Calif.]: O'Reilly, c2005. ISBN 0596009658.

Recommended literature:

VAN DER LINDEN, Peter. Expert C programming: deep C secrets. Mountain View: SunSoft Press, 1994.

Prerequisities

Subject has no prerequisities.

Co-requisities

Subject has no co-requisities.