IB113 Introduction to Programming and Algorithms

Faculty of Informatics
Autumn 2019
Extent and Intensity
2/2/1. 4 credit(s) (plus extra credits for completion). Type of Completion: zk (examination).
doc. Mgr. Radek Pelánek, Ph.D. (lecturer)
RNDr. Jaromír Plhák, Ph.D. (seminar tutor)
RNDr. Tomáš Effenberger (seminar tutor)
RNDr. Jaroslav Čechák (seminar tutor)
RNDr. Filip Lux (seminar tutor)
RNDr. Lukáš Ručka (seminar tutor)
Mgr. Bedřich Said (seminar tutor)
Mgr. Anna Winklerová (seminar tutor)
Guaranteed by
doc. Mgr. Radek Pelánek, Ph.D.
Department of Machine Learning and Data Processing - Faculty of Informatics
Supplier department: Department of Machine Learning and Data Processing - Faculty of Informatics
Mon 8:00–9:50 D2
  • Timetable of Seminar Groups:
IB113/01: Mon 10:00–11:50 B116, J. Plhák
IB113/02: Thu 16:00–17:50 B116, J. Plhák
IB113/03: Mon 16:00–17:50 B116, T. Effenberger
IB113/04: Mon 12:00–13:50 B116, J. Čechák
IB113/05: Fri 8:00–9:50 B117, F. Lux
IB113/06: Tue 12:00–13:50 B116, B. Said
IB113/07: Mon 14:00–15:50 B116, L. Ručka
IB113/08: Tue 8:00–9:50 B116, A. Winklerová
Prerequisites (in Czech)
! NOW ( IB111 Foundations of Programming ) && ! IB111 Foundations of Programming && ! PB162 Java && ! PB161 C++ Programming && ! PB071 Principles of low-level prog. && ! IB001 Intro to Prog. using C
Předmět je určen studentům neinformatických programů. Studenti FI si zapisují předmět IB111.
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
there are 48 fields of study the course is directly associated with, display
Course objectives
The course is an introduction to programming and algorithmic style of thinking. At the end of the course students should be able to: understand and apply basic constructs of programming languages (e.g., conditions, loops, functions, basic data types) and know several basic algorithms.
Learning outcomes
After finishing this course, a student should be able to:
- use basic tools of structured imperative programming languages (variables, conditions, loops, functions, record data types);
- write and debug a simple Python program and adhere to recommended principles of programming style;
- use basic data types and structures (strings, lists, dictionaries);
- explain several classical algorithms.
  • Basic constructions of imperative programming languages: conditions, loops, data types, functions, input, output.
  • Number types, randomness, algorithms with numbers.
  • Data types, lists, dictionaries, objects.
  • Basic algorithms: prime numbers, sorting, searching. Complexity of algorithms (basics).
  • Turtle graphics, bitmap graphics, regular expressions, text processing.
    recommended literature
  • PELÁNEK, Radek. Programátorská cvičebnice: algoritmy v příkladech. Brno: Computer Press, 2012. 175 pp. ISBN 978-80-251-3751-2. info
  • GUZDIAL, Mark and Barbara ERICSON. Introduction to computing & programming in Python : a multimedia approach. 2nd ed. Upper Saddle River [N.J.]: Prentice Hall, 2010. xxiii, 401. ISBN 9780136060239. info
  • ZELLE, John M. Python programming : an introduction to computer science. Wilsonville: Franklin, Beedle &Associates, 2004. xiv, 514. ISBN 1887902996. info
Teaching methods
lectures, programming seminars, homeworks (programming)
Assessment methods
Assesment consists of 3 parts: homeworks (150 points), mid-term programming test (100 points), final written test with multiple choice questions (150 points).
Language of instruction
Further Comments
Study Materials
Listed among pre-requisites of other courses
Teacher's information
The course is also listed under the following terms Autumn 2017, Autumn 2018, Autumn 2020, Autumn 2021.
  • Enrolment Statistics (Autumn 2019, recent)
  • Permalink: https://is.muni.cz/course/fi/autumn2019/IB113