M2160 Introduction to Programming II

Faculty of Science
Spring 2011
Extent and Intensity
2/2/0. 4 credit(s) (příf plus uk k 1 zk 2 plus 1 > 4). Type of Completion: k (colloquium).
Teacher(s)
RNDr. Jaroslav Pelikán, Ph.D. (lecturer)
RNDr. Aleš Zlámal (seminar tutor)
Guaranteed by
RNDr. Jaroslav Pelikán, Ph.D.
Department of Computer Systems and Communications – Faculty of Informatics
Contact Person: RNDr. Jaroslav Pelikán, Ph.D.
Timetable
Fri 10:00–11:50 A107
  • Timetable of Seminar Groups:
M2160/01: Mon 10:00–11:50 A104, A. Zlámal
M2160/02: Thu 16:00–17:50 A104, A. Zlámal
Prerequisites
!( FI:IB001 Intro to Programming )
The course Introduction to Programming II requires an extent of knowledge that is adequate to the course M1160 Introduction to Programming I.
Course Enrolment Limitations
The course is offered to students of any study field.
Course objectives
The course Introduction to Programming II aims to introduce students to advanced techniques used in algorithm design and coding. This course is taught, similarly as the course Introduction to Programming I, with usage of the Pascal programming language.
At the end of this course, students should:
know possibilities of using recursion and backtracking;
understand how to operate with data stored in files;
be able to operate with dynamic data structures;
know basic principles of object oriented programming.
Syllabus
  • Recursion - types of recursion, problems effectively solvable by recursion.
  • Data type record, with command.
  • Data type file - typed files, text files, standard text files.
  • Program units - standard program units. Design of program units.
  • Dynamic variables, pointer.
  • Dynamic data structures - stack, queue, linear list, binary searching tree. Usage of dynamic data structures.
  • Introduction to object oriented programming - class, object. Encapsulation, inheritance, polymorphism.
  • Complexity of algorithms, concept of asymptotic complexity of algorithms. Polynomial and exponential algorithms.
Literature
  • MIHULA, Pavel and Jiří SOUKENKA. Borland pascal 7.0 : kompendium. Edited by Kateřina Juhová. Praha: Grada, 1994, 913 s. ISBN 8071690090. info
  • WIRTH, Niklaus. Algoritmy a štruktúry údajov. Translated by Pavol Fischer. 2. vyd. Bratislava: Alfa, 1989, 481 s. ISBN 80-05-00153-3. info
Teaching methods
Theoretical lectures with examples, practical lessons, homeworks.
Assessment methods
Lectures - 2 hours per week (the attendance is optional), class exercises - 2 hours per week (class exercises take place in a computer classroom and the attendance is mandatory, the students also must submit all required homeworks and successfully pass intrasemestral tests).
Colloquium takes place in computer classroom and students code a program solving a given problem. After it the solution of the given problem is discussed.
Language of instruction
Czech
Further comments (probably available only in Czech)
Study Materials
The course is taught annually.
Teacher's information
http://www.fi.muni.cz/usr/pelikan/Vyuka/Vyuk2.html
The course is also listed under the following terms Spring 2008 - for the purpose of the accreditation, Spring 2011 - only for the accreditation, Spring 2003, Spring 2004, Spring 2005, Spring 2006, Spring 2007, Spring 2008, Spring 2009, Spring 2010, Spring 2012, spring 2012 - acreditation, Spring 2013, Spring 2014, Spring 2015, Spring 2016, Spring 2017, spring 2018, Spring 2019, Spring 2020, Spring 2021, Spring 2022, Spring 2023, Spring 2024.
  • Enrolment Statistics (Spring 2011, recent)
  • Permalink: https://is.muni.cz/course/sci/spring2011/M2160