Programming Essentials
Kód | Zakončení | Kredity | Rozsah | Jazyk výuky |
---|---|---|---|---|
BE5B33PRG | Z,ZK | 6 | 2P+2C | anglicky |
- Vztahy:
- Podmínkou zápisu na předmět BE5B33PRG je, že student si nejpozději ve stejném semestru zapsal příslušný počet předmětů ze skupiny BEZBM
- Garant předmětu:
- Tomáš Svoboda
- Přednášející:
- Milan Němý
- Cvičící:
- Parakh Manoj Gupta, Akash Chaudhary, Milan Němý
- Předmět zajišťuje:
- katedra kybernetiky
- Anotace:
-
The course focuses on understanding and mastering basic design principles of algorithms. It develops data abstraction coupled with the essential programming patterns. The emphasis is on creating readable and reusable programs.
- Požadavky:
-
None. Only basic computer skills like editing ascii files.
- Osnova přednášek:
-
Introduction and course organization, evolution of programming languages.
Algorithm design, the way of writing, flowcharts. Structure of a computer program. Problem decomposition.
Variables, expressions, basic data types and their representation. Type conversions.
Functions, pure and modifiers.
Branching and loops, if-then-else, case, for, while.
Data structures, arrays, strings. Pointers.
I/O operations, reading and writing text and binary files.
Programming styles, coding conventions, estimating complexity of the implementation, asymptotic notation.
Advanced data structures - structs, hash arrays.
Debugging and testing.
Making code human readable and programs reusable.
Overview of programming languages variety.
- Osnova cvičení:
-
Computer Lab 01, first steps
Computer Lab 02, variables, conditionals
Computer Lab 03, Functions
Computer Lab 04, Iterables
Computer Lab 05, Non-trivial loops
Computer Lab 06, Modules and testing
Computer Lab 07, Files
Computer Lab 08, Automated testing
Computer Lab 09, Spam Filter I
Computer Lab 10, Spam Filter II
Computer Lab 11, Spam Filter III
Computer Lab 12, Spam Filter IV
Computer Lab 13, Spam Filter V
- Cíle studia:
-
The course focuses on understanding and mastering basic design principles of algorithms. It develops data abstraction coupled with the essential programming patterns. The emphasis is on creating readable and reusable programs.
- Studijní materiály:
-
Allen Downey. Think Python, How to Think Like a Computer Scientist. Green Tea Press, 2009
- Poznámka:
- Další informace:
- https://cw.fel.cvut.cz/wiki/courses/BE5B33PRG
- Rozvrh na zimní semestr 2024/2025:
-
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
Po Út St Čt Pá - Rozvrh na letní semestr 2024/2025:
- Rozvrh není připraven
- Předmět je součástí následujících studijních plánů:
-
- Electrical Engineering and Computer Science (EECS) (povinný předmět programu)
- Electrical Engineering and Computer Science (EECS) (povinný předmět programu)