Fundamentals of Programming 1200-1PPROGWZ
During this course students will learn about the algorithm design and implementation, in particular:
Algorithms
- algorithm design
- representing algorithms as flow-charts
- complexity analysis
- divide and conquer algorithms
- recursion
Core elements of programs
- different programming languages – semantics and comparison
- compilators
- integrated development environments and dedicated text editors
- correctness analysis
Language specific issues:
- variables and data types
- operators and arithmetic expressions
- conditional statements and loops
- functions
- input/output operations
- complex data structures
- objects and methods
- libraries and moduls
- data visualization
Term 2023Z:
During this course students will learn about the algorithm design and implementation, in particular: Algorithms Core elements of programs Language specific issues: |
Term 2024Z:
During this course students will learn about the algorithm design and implementation, in particular: Algorithms Core elements of programs Language specific issues: |
Course coordinators
Type of course
Mode
Learning outcomes
At the end of the course the student will:
- know how to formulate an algorithm
- write an algorithm in Python language
- is able to use Python libraries
- analyze program's correctness and complexity
Assessment criteria
Final exam (test)
Practical placement
does not concern
Bibliography
1. D. Harel, David, Y.Feldman, Yishai, "Algorithmic. The Spirit of Computing",
Addison-Wesley, 2004.
2. Mark Lutz, "Learning Python", O'Reilly Media 2013
3. “Dive into python” - free book available at diveintopython.org
Term 2023Z:
1. D. Harel, David, Y.Feldman, Yishai, "Algorithmic. The Spirit of Computing", |
Term 2024Z:
1. D. Harel, David, Y.Feldman, Yishai, "Algorithmic. The Spirit of Computing", |
Additional information
Additional information (registration calendar, class conductors, localization and schedules of classes), might be available in the USOSweb system: