CZECH TECHNICAL UNIVERSITY IN PRAGUE
STUDY PLANS
2023/2024

# Algorithmization and Programming

Code Completion Credits Range Language
E012035 KZ 4 1P+2C English
Garant předmětu:
Marta Čertíková
Lecturer:
Marta Čertíková, David Trdlička
Tutor:
Marta Čertíková, David Trdlička
Supervisor:
Department of Technical Mathematics
Synopsis:

Students are acquainted with programming language C and exercised at basic problems of numerical mathematics.

Requirements:
Syllabus of lectures:

Illustration of a simple program, translation, loading and debugging program. Basic elements of C, variables and arrays. Expressions. Assignment expression and statement. Operators of incrementation and decrementation, if statement and conditional expression, switch statement. Go statement, loop statement. Input and output statements. Functions, call by reference and value. Solution of equations f(x) = 0. Numerical integration. Recursive function, pointers, dynamic allocation of memory. Sorting. Solution of system linear equations by finite and iterative methods. Type typedef, enumeration type, structures. Date structures in language C.

Syllabus of tutorials:

Illustration of a simple program, translation, loading and debugging program. Basic elements of C, variables and arrays. Expressions. Assignment expression and statement. Operators of incrementation and decrementation, if statement and conditional expression, switch statement. Go statement, loop statement. Input and output statements. Functions, call by reference and value. Solution of equations f(x) = 0. Numerical integration. Recursive function, pointers, dynamic allocation of memory. Sorting. Solution of system linear equations by finite and iterative methods. Type typedef, enumeration type, structures. Date structures in language C.

Study Objective:

1. Example of elementary program, program structure, programming process;, Algorithm statements; Building blocks of C language;, 2. Statements, assignment, priorities of operations; Mathematical functions, standard libraries; Flow control: Conditional statement, Switch, Goto;, 3. Cycles: For, While, Do-while; Break; Continue;, 4. Formatted and unformatted intput/output; Input/output from data files;, 5. Functions - call by value, call by reference; Recursive functions;, 6. Pointers; Array as a parameter of function; function as a parameter of function; Data types typedef, enumeration, structure;, 7. Dynamic memory allocation: one-dimensional arrays, multi-dimensional arrays;, 8. Sorting: direct selection, bubblesort, shakesort, quicksort;, 9. Numerical integration: trapezoidal method, Simpson's method;, 10. Equation f(x)=0: bisection method, iterative method, Newton's method;, 11. System of linear algebraic equations: Finite methods: Gaussian elimination, Gaussian elimination for tridiagonal system;, 12. System of linear algebraic equations: Iterative methods: Jacobi's method, Gauss-Seidel method;, 13. Cauchy problem for one ordinary differential equation

Study materials:

Barclay,K.A.: ANSI C Problem Solving and Programming, Prentice Hall 1990;, www.cplusplus.com/doc/tutorial

Note:
Time-table for winter semester 2023/2024:
 06:00–08:0008:00–10:0010:00–12:0012:00–14:0014:00–16:0016:00–18:0018:00–20:0020:00–22:0022:00–24:00 roomKN:A-313Trdlička D.09:00–10:30(lecture parallel1)Karlovo nám.Učebna KA313roomKN:A-447Trdlička D.14:15–15:45(lecture parallel1parallel nr.101)Karlovo nám.Poč. učebna A447
Time-table for summer semester 2023/2024:
Time-table is not available yet
The course is a part of the following study plans:
Data valid to 2023-08-30
Aktualizace výše uvedených informací naleznete na adrese https://bilakniha.cvut.cz/en/predmet1763006.html