Lecturer(s)
|
|
Course content
|
1. Basic concepts of computers and programming; programs and programming languages; conventions and comments; data types; variables, declarations, assignments, operators 2. Terminal input and output; command line 3. Basic mathematical functions; random numbers; program validation, debugging 4. Control structures (branching and cycles) 5. Subroutines, return value, parameters; magic numbers and constants 6. Classes and objects; memory layout 7. Arrays, multidimensional arrays, arrays of objects; 8. Examples of fields, methods, and objects 9. Strings; work with characters; algorithm design procedure 10. Basic sorting and searching algorithms 11. Exceptions; working with files and folders; file input and output 12. Display of data in computer memory, coding of integers and real numbers, characters; comparison of object-oriented and procedural programming
|
Learning activities and teaching methods
|
- Preparation for comprehensive test (10-40)
- 15 hours per semester
- Contact hours
- 65 hours per semester
- Preparation for an examination (30-60)
- 30 hours per semester
- Individual project (40)
- 30 hours per semester
|
prerequisite |
---|
Knowledge |
---|
describe the basic principles of computer operation and operating system |
explain the basics of propositional logic |
explain the solution of a system of linear equations |
Skills |
---|
use the operating system (install and run applications) |
work with the file system (create, copy and delete files and folders) |
Competences |
---|
N/A |
learning outcomes |
---|
Knowledge |
---|
characterize the basic language constructions and data structures of the programming language |
explain the basic approaches for algorithm design |
characterize ways of creating, verifying and debugging programs |
explain basic sorting and searching algorithms |
characterize work with files |
Skills |
---|
analyze and solve simple problems |
design and implement programs in the selected programming language |
apply basic sorting and searching algorithms |
Competences |
---|
N/A |
teaching methods |
---|
Knowledge |
---|
Task-based study method |
Skills demonstration |
Self-study of literature |
One-to-One tutorial |
Interactive lecture |
Skills |
---|
Practicum |
Skills demonstration |
One-to-One tutorial |
Lecture with visual aids |
Task-based study method |
Lecture |
Competences |
---|
Practicum |
Skills demonstration |
Lecture |
Task-based study method |
Individual study |
assessment methods |
---|
Knowledge |
---|
Written exam |
Combined exam |
Test |
Skills |
---|
Skills demonstration during practicum |
Combined exam |
Written exam |
Continuous assessment |
Test |
Competences |
---|
Written exam |
Continuous assessment |
Test |
Recommended literature
|
-
Beazley, David M. Python : referenční programátorská příručka. Praha : Neocortex, 2002. ISBN 80-86330-05-2.
-
Lutz, Mark; Ascher, David. Naučte se Python. 1. vyd. Praha : Grada Publishing, 2003. ISBN 80-247-0367-X.
-
Wróblewski, Piotr. Algoritmy : datové struktury a programovací techniky. Vyd. 1. Brno : Computer Press, 2004. ISBN 80-251-0343-9.
|