Computers and Programming 2
FEKT-BPC-PC2SAcad. year: 2019/2020
Course is focused on the basic knowledge of the programming language C and C ++. Students learn algorithmization specified tasks, design appropriate data structures, implementation of the program in C/C ++. There are presented some algorithms for processing of numeric and text data. Students will be introduced with the standard libraries, working with files, dynamic structures. Next part of the course deals with object-oriented programming in C ++. It is introduced the concept of classes, inheritance, overloading of operators. Students obtain practical experience in the implementation of tasks in Microsoft Visual Studio.
Learning outcomes of the course unit
The student is able to:
- explain the function of the C language statements,
- describe the properties of the basic data types,
- propose a structure for the representation of complex data,
- use functions included in the standard libraries,
- propose an algorithm working with multi-dimensional and one-dimensional array,
- propose an algorithm to sort a list of values,
- create a library of functions,
- create an interactive application.
The subject knowledge on the secondary school level is required. Further the basic knowledge of working with files in the Microsoft Windows environment is desirable.
Recommended optional programme components
Recommended or required reading
HEROUT, P. Učebnice jazyka C. KOPP, 2004.
PROKOP, J. Algoritmy v jazyku C a C++. Praha: Grada Publishing, 2008.
PECINOVSKÝ, R., VIRIUS, M. Učebnice programování: základy algoritmizace. Praha: Grada Publishing, 1997
VIRIUS, M. Jazyky C a C++. Komplexní kapesní průvodce. Praha: Grada Publishing, 2005
RAIDA, Z., FIALA, P. Počítače a programování 2. Edice "Elektronická skripta". Brno: FEKT VUT v Brně, 2002.
STROUSTRUP, B. The C++ Programming Language, 4th Edition, Addison-Wesley, 2013. (EN)
DOŇAR, B., ZAPLATÍLEK, K. MATLAB - tvorba uživatelských aplikací. BEN, 2004. (CS)
KARBAB, P. Výpočty a simulace v programech Matlab a Simulink. COMPUTER PRESS, 2006. (CS)
HAVLÍČEK, J., VLACH, J., VLACH, M., VLACHOVÁ, V. Začínáme s LabVIEW. BEN, 2008. (CS)
Planned learning activities and teaching methods
Techning methods include lectures and computer laboratories laboratories. Students have to write a single project/assignment during the course.
Assesment methods and criteria linked to learning outcomes
up to 22 points from laboratories (2 points for the task in 11 exercises)
up to 20 from tests during semester (5 points per test)
up to 28 points for the final test at the end of the semester
up to 30 points for an individual project in C / C ++
To pass the course it is necessary to develop an individual project.
Language of instruction
1. Introduction to C language, program structure, data types, standard output.
2. Expressions, operators, conversions, standard output.
4. Arrays and pointers.
5. Strings in C, library for working with strings.
6. Structured data types – structure, union, enumeration.
7. Creating custom functions, library of functions, parameter passing.
8. Algorithms for sorting and searching.
9. Reading and writing files.
10. Abstract data types – list, queue, stack.
11. Summary of the basics of programming in C, platform-independent programming in C, ANSI C, standard library of C, compiler, preprocessor directives.
12. Introduction to object-oriented programming.
13. Applications with graphical user interface.
The aim of the course is to teach students the general programming habits, algorithmization of complex problems and usage of object-oriented approach to programming. Course is focused on C programming language and object-oriented programming in C + + using Microsoft Visual Studio.
Specification of controlled education, way of implementation and compensation for absences
The content and forms of instruction in the evaluated course are specified by a regulation issued by the lecturer responsible for the course and updated for every academic year.
Type of course unit
26 hours, optionally
Teacher / Lecturer
Exercise in computer lab
26 hours, compulsory
Teacher / Lecturer
eLearning: currently opened course