#
PřF:Bi3011 Algorithms and programs - Course Information

## Bi3011 Algorithmization and programming

**Faculty of Science**

Spring 2020

**Extent and Intensity**- 2/2/0. 4 credit(s) (plus extra credits for completion). Type of Completion: k (colloquium).
**Teacher(s)**- RNDr. Miroslav Kubásek, Ph.D. (lecturer)

doc. Ing. Daniel Schwarz, Ph.D. (lecturer) **Guaranteed by**- doc. Ing. Daniel Schwarz, Ph.D.

RECETOX - Faculty of Science

Contact Person: RNDr. Miroslav Kubásek, Ph.D.

Supplier department: RECETOX - Faculty of Science **Prerequisites**- Basic orientation in logic and formal languages.
**Course Enrolment Limitations**- The course is also offered to the students of the fields other than those the course is directly associated with.
**fields of study / plans the course is directly associated with**- Biomedical bioinformatics (programme PřF, B-MBB)
- Epidemiology and modeling (programme PřF, B-MBB)
- Mathematical Biology (programme PřF, B-EXB)

**Course objectives**- The aim of the course is to provide students with basic concepts of programming and algorithmization using diagrams and examples in the chosen programming language (Java, Python).
**Learning outcomes**- After completion of the course, student will be able:

- to define basic data types and more complex data structures;

- to define appropriate data type to store a specific value;

- to design an algorithm to solve the assigned task and to document it using flow diagrams;

- to decompose a more complex algorithm into subprograms;

- to code the algorithm in a selected programming language and debug the program. **Syllabus**- 1. Introduction, history, definition of basic terms - algorithm, program, complexity.
- 2. Flow diagrams: definition, sequences, branching, cycles.
- 3. Addition, volume calculation, triangle, minimum search, quadratic equation, simple calculator.
- 4. Mean grade, prime numbers, factorial, sum of numerical series.
- 5. Cycles and examples, the number of characters in a file.
- 6. Subprograms: definition, parameters, return value, algorithm decomposition, basic sorting algorithms: selection sort, bubble sort.
- 7. Data types: ordinal, irregular, arrays, examples: reverse listing.
- 8. Recursion: definition, Fibonacci series - recursive vs. non-recursive solution, binary search - recursive vs. iterative.

**Literature**- Buchalcevová, A.: Algoritmizace a programování. Praha: VŠE, 1994.
- Topfer, P.: Algoritmy a programovací techniky. Praha: Prometheus, 1995.
- Virius, M.: Základy algoritmizace. Praha: ČVUT, 1997.

**Teaching methods**- lectures, programming projects, homeworks
**Assessment methods**- 4 tasks in the course of the semester, final written test.
**Language of instruction**- Czech
**Further Comments**- Study Materials

The course is taught annually.

The course is taught: every week.

- Enrolment Statistics (recent)

- Permalink: https://is.muni.cz/course/sci/spring2020/Bi3011