|
Lecturer(s)
|
-
Rašková Anna, Bc.
-
König Alexander, Ing.
-
Trhlík Vladan, Bc.
-
Hácha Filip, Ing.
-
Frank Jakub, Ing.
-
Bartička Vojtěch, Ing.
-
Seják Michal, Ing.
-
Poór Vítek, Ing.
-
Vítová Natálie, Ing. M.Sc.
-
Hotovec Milan, Ing.
-
Prantl Martin, Ing. Ph.D.
-
Maňák Martin, Mgr. Ph.D.
-
Vaněček Petr, Ing. Ph.D.
|
|
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.
|