Course detail

Algorithms and Programming

FEKT-APRGAcad. year: 2014/2015

The course is designed as an introduction to the problems of algorithms and programming. Students are introduced to the basic concepts of programming, development of algorithms and programs. The emphasis is on the design and implementation of programs. The knowledge of the basic elements of the program is required and students should be able to use these elements. Students are familiar with the programming environment Matlab, where students programmed scripts and functions solving simple problems.

Language of instruction

Czech

Number of ECTS credits

4

Mode of study

Not applicable.

Offered to foreign students

Of all faculties

Learning outcomes of the course unit

Students are able to:
- propose algorithms of simple tasks,
- use basic elements of the program (variables, mathematical operations, conditions, loops, etc.),
- use an iterative and recursive procedures,
- designed algorithms written in the programming language Matlab - create scripts and functions,
- work with the basic data formats,
- create a search function and basic methods of sorting by known algorithms,
- use the features most used libraries,
- create own toolboxes of functions,
- own programs to describe and explain.

Prerequisites

Secondary-school knowledge of the study area.

Co-requisites

Not applicable.

Planned learning activities and teaching methods

Teaching methods depend on the type of course unit as specified in the article 7 of BUT Rules for Studies and Examinations.

Assesment methods and criteria linked to learning outcomes

Students must obtain at least 50 points out of total 100 points in the sub-activities:
1. test: Programming in Matlab (min 3 points, max 10 points)
2. test: Design of algorithms (min 3 points, max 10 points)
3. project: design a toolbox of functions (min 4 points, max 15 points) + technical documentation (min 3 points, max 10 points)
4. final test: (min 20 points, max 55 points)
Individual activities to check students' ability to design algorithms for solving simple problems and demonstrate the implementation of the relevant programs.

Course curriculum

1. Programming, algorithm, design of the program
2. Introduction to Matlab
3. Review of basic data structures and their use
4. The basic elements of the program, loops, recursion
5. Algorithmic numerical methods
6. Sorting algorithms
7. Search algorithms
8. Text search
9. Performance analysis algorithms
10. Removal of recursion and optimization algorithms
11. Advanced programming techniques
12. Matlab toolboxes
13. Possibilities of using Matlab in other fields

Work placements

Not applicable.

Aims

The aim of the course is to introduce basic programming and learning habits. Further introduction to the programming environment Matlab and programming custom scripts and functions.

Specification of controlled education, way of implementation and compensation for absences

Computer exercises are mandatory, properly excused missed lectures can be compensated individually after discussion with teacher.

Recommended optional programme components

Not applicable.

Prerequisites and corequisites

Not applicable.

Basic literature

Zaplatílek K, Doňar B: Matlab pro začátečníky, Technická literatura BEN, Praha 2003 (CS)
Zaplatílek K, Doňar B: Matlab tvorba uživatelských aplikací, Technická literatura BEN, Praha 2004 (CS)

Recommended reading

Not applicable.

Classification of course in study plans

  • Programme BTBIO-A Bachelor's

    branch A-BTB , 1 year of study, summer semester, compulsory

  • Programme EEKR-CZV lifelong learning

    branch EE-FLE , 1 year of study, summer semester, compulsory

Type of course unit

 

Lecture

26 hod., optionally

Teacher / Lecturer

Syllabus

1. Programming, algorithm, program conception
2. An introduction to Matlab
3. An overview of the basic data structures and use of them
4. The basic program elements, cycles, recursions
5. Algorithmisation of numerical methods
6. Sequencing algorithms
7. Searching algorithms
8. Searching of texts
9. Analysis of program efficiency
10. Elimination of recursion and algorithm optimization
11. Advanced programming techniques
12. Matlab llibraries
13. Use of Matlab in other disciplines

Exercise in computer lab

26 hod., compulsory

Teacher / Lecturer

Syllabus

1. The programming environment Matlab, parts, control
2. Work with the basic types of data, data loading, presentation of results
3. Basic mathematical problems, using the basic mathematical functions of Matlab
4. Practising the basic types of program branching, cycles in recursive problems
5. Creating scripts and functions
6. Creating simple data structures and work with elements
7. Design of simple functions for sequencing of elements by means of methods Select sort, Buble sort, Insert sort
8. Creating of a simple database, searching of texts
9. Individual projects, an outline of solutions, test (max 20 points)
10. Matlab graphical application interface Guide
11. Application of students‘ own functions to a simple graphic interface Guide
12. Submission and presentation of student work (max. 20 points)
13. Final test (max. 60 points), classified course-unit credit