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).
Teacher(s)
doc. Mgr. Radek Pelánek, Ph.D. (lecturer)
RNDr. Jaromír Plhák, Ph.D. (seminar tutor)
Mgr. Tomáš Effenberger (seminar tutor)
Mgr. Jaroslav Čechák (seminar tutor)
Mgr. Filip Lux (seminar tutor)
RNDr. Lukáš Ručka (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
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 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.
Syllabus
  • 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.
Literature
    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
Czech
Listed among pre-requisites of other courses
Teacher's information
https://www.fi.muni.cz/~xpelanek/IB113/
The course is also listed under the following terms Autumn 2017, Autumn 2018.
  • Enrolment Statistics (recent)
  • Permalink: https://is.muni.cz/course/fi/autumn2019/IB113