Algorithms and Programming II.

Teachers

Included in study programs

Teaching results

After completing the course, students should be able to:
A understand the basics of algorithmization of programming tasks and the basic principles of procedural programming in the C language
B be familiar with the syntax of the C language and the semantic foundations of procedural programming in an integrated development environment
C analyse the assignment of the programming task, design an algorithm for its solution and implement the proposed algorithm using the syntactic rules of the C language and the procedural paradigm into the source code solving the assigned programming task
D eliminate possible syntactic errors in the source code solving the assigned programming task, to be able to identify and eliminate possible semantic errors
E analyse the behaviour of the final program with test input data using the integrated development environment debugger
F build the final program for the target operating system and the target hardware platform from the tested source code of the program solving the assigned programming task
G present and defend the proposed solutions to the assigned programming tasks at a professional level
H prepare a technical documentation (a report) describing their proposed solution to the assigned programming task

Indicative content

1 Introduction to algorithms and algorithmization
2 Source form of a program created in the C language
3 The process of building a program created in the C language, properties of the C language
4 Input and output from and to programs created in the C language
5 Control structures used to control the flow of a program created in C
6 One-dimensional, multidimensional arrays and strings in a program created in C
7 Pointer and dereferencing the pointer in a program created in C language
8 Functions in a program created in the C language
9 Recursive functions in a program created in the C language
10 Programmer-defined data types in a program created in C
11 Structures, and structured variables in a program created in C
12 Casting data types of expression operands in a program created in C
13 Working with a disk file in a program created in C

Support literature

KERNIGHAN, B. W., RITCHIE, D. M. Programovací jazyk C. Praha: Computer Press, 2006. ISBN 802510897X
SEDGEWICK, R. Algoritmy v C. Praha: SoftPress, 2003. ISBN 80-86497-56-9
VIRIUS, M. Jazyky C a C++. Praha: Grada, 2011. ISBN 9788024739175
ARCHER, T. Myslíme v jazyku C. Praha: Grada, 2002. ISBN 80-247-0301-7
HEROUT, P. Učebnice jazyka C I. díl. České Budějovice: KOPP, 2009. ISBN 9788072323838
HEROUT, P. Učebnice jazyka C II. díl, České Budějovice: KOPP, 2008. ISBN 9788072323678
ŠALOUN, P. Programovací jazyk C pro zelenáče. Praha: Neokortex, 1999. ISBN 80- 86330-02-X
DOSTÁL, R. C/C++ hotová řešení. Brno: Computer Press, 2009. ISBN 978-80-251-2190-0
HANÁK, J. Programovaní v jazyce C. Malejov: Computer Media, 2011. ISBN 9788074020414
SCHILDT, H. Nauč se sám C. Praha: SoftPress, 2002. ISBN 80-86497-16-X
CHUDÁ, D., JURÍKOVÁ, L., MEDVEĎOVÁ, E., TURŇA, Ľ.: Programovanie v jazyku C. Bratislava: Ekonóm, 2006. ISBN 80-225-2186-8
LIDAY, M. a kol. Programovanie 1(Jazyk C). Bratislava: Ekonóm, 1997. ISBN 80-225-0877-2

Requirements to complete the course

Exercises (40% of course evaluation)
The content of the exercise is the solution of assigned programming tasks. In addition to these tasks, students solve independent home programming assignments thematically related to lectures and solved programming tasks from exercises. Students comment on their solutions to independent home assignments with their technical descriptions, and they defend them in a possible discussion in front of other students of their study group. The solutions of independent programming assignments of students are evaluated (10% of the course evaluation). By solving and evaluating independent home assignments, the achieved level of the B, C, D, E, F, G, H educational results is verified. During the exercises, students complete an independent written work, solving a programming task in an integrated development environment, which is evaluated (30% of the course evaluation). By solving and evaluating the problem task from the independent written work, the achieved level of the C, D, E, F educational results is verified.
Exam (60% of the course evaluation)
The exam consists of two parts:
- from an independent exam written work, solution of a programming task in an integrated development environment, and defense of this solution (50% of the course evaluation). By solving and evaluating the problem task from the independent exam written work and defending this solution, the achieved level of the C, D, E, F, G educational results is verified.
- from the oral part, where students answer theoretical questions from the basics of algorithmization of programming tasks, a syntax of the C language and from the principles of procedural programming in the C language (10% of the course evaluation). The oral part of the exam and its evaluation verifies the achieved level of the A and B educational results.

Student workload

Total study load (in hours): 7 credits x 26 hours = 182 hours
Distribution of study load
Participation in seminars: 52 hours
Preparation for seminars: 26 hours
Written assignments: 12 hours
Preparation for written work: 30 hours
Exam preparation: 62 hours

Language whose command is required to complete the course

slovak

Date of approval: 10.02.2023

Date of the latest change: 18.05.2022