Course Unit Code | 460-2052/02 |
---|
Number of ECTS Credits Allocated | 5 ECTS credits |
---|
Type of Course Unit * | Optional |
---|
Level of Course Unit * | First Cycle |
---|
Year of Study * | |
---|
Semester when the Course Unit is delivered | Winter Semester |
---|
Mode of Delivery | Face-to-face |
---|
Language of Instruction | English |
---|
Prerequisites and Co-Requisites | Course succeeds to compulsory courses of previous semester |
---|
Name of Lecturer(s) | Personal ID | Name |
---|
| GAU01 | Ing. Jan Gaura, Ph.D. |
| DOL0133 | Ing. Vít Doleží |
Summary |
---|
The course introduces students to all the basics of software development problems using procedural programming. The topics of simple data taps, dynamic memory allocation, program debugging, file handling, structured data types are discussed. It also explains the use of library functions. |
Learning Outcomes of the Course Unit |
---|
The aim of the course is to familiarize students with the basics of procedural programming and its real use in solving some programming tasks. Students are familiarized with the overall ecosystem of software development from its writing, through compilation, debugging, but also with how to properly document source codes. An integral part is understanding the principles of dynamic memory allocation and how data is represented in it. |
Course Contents |
---|
Lectures:
1. Introduction to course organization. Basic data types, variable, print to standard output.
2. Function definition. Fundamentals of flow control.
3. Representation of strings.
4. Structured data types and their usage. Fundamentals of programs debugging.
5. Working with files. Loading and saving data into text and binary files.
6. Use of recursion.
7. Program testing, source code documentation.
Exercises:
1. Getting familiar with a development environment. Running source code.
2. Basic data types, variable, standard output.
3. Fundamentals of flow control. Reading input data.
4. Definition of function.
5. Representing and working with strings.
6. Structured data types and their usage.
7. Fundamentals of program debugging.
8. Working with files. Loading and saving data into text and binary files.
9. Use of recursion and its relation to cycles.
10. Using library functions.
11. Implementation of some abstract data types.
12. Drawing of graphical images. |
Recommended or Required Reading |
---|
Required Reading: |
---|
STROUSTRUP, Bjarne. Programming: principles and practice using C++. Second edition. Upper Saddle River, NJ: Addison-Wesley, 2014. ISBN 978-0321-992789.
HOLDEN, Daniel. Build Your Own Lisp, CreateSpace Independent Publishing Platform; 1 edition, 2014, ISBN 978-1501006623. |
STROUSTRUP, Bjarne. Programming: principles and practice using C++. Second edition. Upper Saddle River, NJ: Addison-Wesley, 2014. ISBN 978-0321-992789.
VIRIUS, Miroslav. Jazyky C a C++: kompletní průvodce. 2., aktualiz. vyd. Praha: Grada, 2011. Knihovna programátora (Grada). ISBN 978-80-247-3917-5.
HOLDEN, Daniel. Build Your Own Lisp, CreateSpace Independent Publishing Platform; 1 edition, 2014, ISBN 978-1501006623. |
Recommended Reading: |
---|
Kochan, Stephen, G. : Programming in C (3rd Edition) 3rd Edition, 2004, ISBN 978-0672326660.
GRIFFITHS, David. Head First C, Shroff; First edition, 2012, ISBN 978-9350236925. |
Kochan, Stephen, G. : Programming in C (3rd Edition) 3rd Edition, 2004, ISBN 978-0672326660.
HEROUT, Pavel. Učebnice jazyka C. Praha: [Středisko pro podporu studentů se specifickými potřebami ELSA ČVUT], 2015. ISBN 978-80-7232-383-8.
GRIFFITHS, David. Head First C, Shroff; First edition, 2012, ISBN 978-9350236925. |
Planned learning activities and teaching methods |
---|
Lectures, Tutorials |
Assesment methods and criteria |
---|
Tasks are not Defined |