Course detail

Computers and Programming 1

FEKT-BKC-PC1TAcad. year: 2022/2023

In this course, students learn about computer network solutions and the potentials of university and faculty networks. Part of the course is to introduce the basics of operating systems, their services, and file systems. The course focuses on practical skills of algorithm development and programming in the C language according to the ANSI standard, to the level of preparation of customized functions and their use.

Language of instruction

Czech

Number of ECTS credits

5

Mode of study

Not applicable.

Learning outcomes of the course unit

Students will be able to:
- use the University Information System and the Moodle learning system
- configure an e-mail client
- connect a device to the BUT Wi-Fi network,
- control the development environment Microsoft Visual Studio,
- program basic tasks in the C language according to the ANSI standard, compile program and use proper functions
- debug programs in the C language and look for errors,
- design the structure of the program.

Prerequisites

The subject knowledge on the secondary school level is required.

Co-requisites

Not applicable.

Planned learning activities and teaching methods

Techning methods include lectures and computer laboratories. Course is taking advantage of e-learning (Moodle) system. Students have to write a single project during the course.

Assesment methods and criteria linked to learning outcomes

Requirements for successful course completion are specified by the guarantor’s regulation updated for every academic year.

Course curriculum

1. Faculty computer network, E-mail, Wi-Fi
2. Properties of algorithms, notations algorithms
3. Design and implementation of algorithms. Introduction to the development environment MS Visual Studio 2022
4. Principles of high level programming languages. Basic building blocks of program
5. Simple data types in C. One-dimensional and multi-dimensional arrays of variables. Expressions and statements
6. Pointer type
7. Functions, function parameters in the C language. Passing values by reference, passing by value
8. Management structure. The block structure of program, the scope of validity of identifiers
9. Structured data types. Enums
10. Text files, standard input/output. Interaction of the program with the user
11. Dynamic variables. Linked structures
12. Numerical methods in programming. Recursion. Sorting algorithms
13. Consultation on self-contained projects.

Work placements

Not applicable.

Aims

To acquaint students with the basics of computer networks, the architecture of a university and faculty network inclusive of services, and operating systems such as Windows and Unix and their services, and file systems. To acquaint students with the basics of programming and algorithmization, using the ANSI C language and development tool Visual Studio.

Specification of controlled education, way of implementation and compensation for absences

Extent and forms are specified by guarantor’s regulation updated for every academic year.

Recommended optional programme components

Not applicable.

Prerequisites and corequisites

Not applicable.

Basic literature

HEROUT, Pavel. Učebnice jazyka C. 1. díl. 5. vyd. České Budějovice: Kopp, 2008. ISBN 978-80-7232-351-7. (CS)
KERNIGHAN, Brian W. a Dennis M. RITCHIE. Programovací jazyk C. Brno: Computer Press, 2006. ISBN 80-251-0897-X. (CS)
KERNIGHAN, Brian W. a Dennis M. RITCHIE. Programovací jazyk C. 2. vydání. Brno: Computer Press, 2019. ISBN 978-80-251-4965-2. (CS)
RAIDA, Zbyněk, Irena HLAVIČKOVÁ a Michal POKORNÝ. Počítače a programování 2: přednášky. Vyd. 2., přeprac. V Brně: Vysoké učení technické, Fakulta elektrotechniky a komunikačních technologií, Ústav radioelektroniky, 2007. ISBN 978-80-214-3536-0. (CS)
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. (CS)

Recommended reading

PROKOP, Jiří. Algoritmy v jazyku C a C++. 3., aktualizované a rozšířené vydání. Praha: Grada, 2015. Průvodce (Grada). ISBN 978-80-247-5467-3. (CS)

Elearning

Classification of course in study plans

  • Programme BKC-TLI Bachelor's 1 year of study, winter semester, compulsory

Type of course unit

 

Lecture

26 hod., optionally

Teacher / Lecturer

Syllabus

1. Faculty computer network, faculty UNIX server, E-mail, Wi-Fi. Properties of algorithms, notations algorithms. Design and implementation of algorithms. Introduction to the development environment MS Visual Studio 2017.
2. Principles of high level programming languages. Basic building blocks of program. Simple data types in C. One-dimensional and multi-dimensional arrays of variables. Expressions and statements. Pointer type.
3. Strings. Functions, function parameters in the C language. Passing values by reference, passing by value.
4. Management structure. The block structure of program, the scope of validity of identifiers. Structured data types. Enums.
5. Text files, standard input/output. Interaction of the program with the user. Dynamic variables. Linked structures.

Exercise in computer lab

26 hod., compulsory

Teacher / Lecturer

Syllabus

1. Console application: Functions, function parameters in the C language. Text files, standard input/output.
2. Console application: Dynamic variables. Linked structures. Interaction of the program with the user.

Elearning