Basics of Programming
FSI-SZPAcad. year: 2018/2019
The course introduces students to the basics of algorithmization and programming. Discussed topics are algorithms, simple and structured data types, commands and block control structures, static and dynamic variables, inputs and outputs and working with files.
Learning outcomes of the course unit
Students learn the basics of programming and algorithms. They will be able to formulate a simple algorithm and to implement it. Acquired knowledge enables students to orientate in object-oriented programming.
Basic skills with Windows PC.
Recommended optional programme components
Recommended or required reading
V. Kadlec: Učíme se programovat v DELPHI a v jazyce OBJECT PASCAL, Computer Press, Praha, 2001.
P. Satrapa: Pascal pro zelenáče, Neokortex, Praha, 2000.
T. Hála: Pascal (učebnice pro střední školy), Computer Press, 2002.
Planned learning activities and teaching methods
The course is taught through lectures, where an explanation of basic principles is made. Seminaries are focused on practical mastering in topics presented in the lectures.
Assesment methods and criteria linked to learning outcomes
Classification reflects the quality of the semester assignment and written test.
FINAL ASSESSMENT: 100--90: A (excellent); 89--80: B (very good); 79--70: C (good); 69--60: D (satisfactory); 59--50: E (sufficient); 49--0: F (unsatisfactory).
Language of instruction
The aim of the course is to teach students to algorithmize practical problems and to implement the algorithms. Teaching is leaded in such a way that students learn to work independently in a programming environment so as they could their knowledge to deepen as needed and to be able to present the results of independent work on assigned projects.
Specification of controlled education, way of implementation and compensation for absences
Attendance at lectures is recommended, attendance at seminars is required. Lessons are held according to a weekly schedule. The method of compensation for an absence is fully at the authorization of the teacher.
Type of course unit
13 hours, optionally
Teacher / Lecturer
1. Algorithm and program, algorithm statement
2. Block control structures
3. Simple and structured data types
4. Cycles and structured jumps, loop invariant
5. Procedures and functions
6. Parameters, local and global variables
7. Function calls, recursion
8. Static and dynamic variables
9. Inputs and outputs, files, file operations
10. Exceptions and protected blocks
11. Concept of event control
12. Concept of object-oriented programming, types vs. classes
13. Systematics of top-down methodology, summary and closing remarks
seminars in computer labs
26 hours, compulsory
Teacher / Lecturer
The seminars develop topics covered in lectures. An accent is placed on the ability to work independently, ie. to create a simple algorithm and its debugging. At least one new program is is developed in each seminar. Students demonstrate acquired knowledge in semestral project, whose results are presented at the end of the semester.