Basics of Programming (FSI-SZP)

Academic year 2020/2021
Supervisor: prof. RNDr. Ing. Tomáš Březina, CSc.  
Supervising institute: ÚM all courses guaranted by this institute
Teaching language: Czech
Aims of the course unit:
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.
Learning outcomes and competences:
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.
Prerequisites:
Basic skills with Windows PC.
Course contents:
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.
Teaching methods and criteria:
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).
Controlled participation in lessons:
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:
    Lecture  13 × 1 hrs. optionally                  
    Computer-assisted exercise  13 × 2 hrs. compulsory                  
Course curriculum:
    Lecture 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
    Computer-assisted exercise 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.
The study programmes with the given course:
Programme Study form Branch Spec. Final classification   Course-unit credits     Obligation     Level     Year     Semester  
B-MAI-P full-time study --- no specialisation -- GCr 4 Compulsory 1 1 W