Basic Programming Course (10936)
Basic information | |||||||||
Charles University | |||||||||
Basic Programming Course | |||||||||
admission procedure in progress | |||||||||
Presential | |||||||||
Czech | |||||||||
Basic Programming Course | |||||||||
Basic course of programming, algorithms and data-structures that are a must know of each programmer. Integrated Course Documented by a Microcertificate This integrated course consists of three subjects from the first year of the Bachelor's program in Informatics (B0613A140006). Students first concurrently complete the courses NPRG030 and NPRG062, both taught in the winter semester. These courses are followed by NPRG031, taught in the summer semester. NPRG030 Programming 1, Winter Semester, 5 Credits, Co-requisite: NPRG062 NPRG062 Introduction to Algorithms , Winter Semester, 4 Credits, Co-requisite: NPRG030 NPRG031 Programming 2, Summer Semester, 5 Credits, Co-requisite: NPRG030 |
|||||||||
Subject of the courses Introduction to Algorithms and Programming 1 and 2 is awareness of particular basic algorithms, data structures and the ability of practical programming in Python and C# programming languages, including of the ability to implement the algorithms discussed in the course of Introduction to Algorithms. The study consists of lectures where theoretical topics, as well as practical demonstrations are presented. As well, both courses are conducted by practical (tutorials), where the students are expected to be able to individually design and implement algorithms solving particular assigned problems. One of the obligations required for credit in Programming 2 is a semester project that consists of at least 1 000 lines long debugged program, including a written documentation. | |||||||||
Students admitted to the course will be those accepted for study at the Faculty of Mathematics and Physics, Charles University, or at a collaborating university, in accordance with the admission requirements for the Informatics program at the Faculty of Mathematics and Physics, Charles University. | |||||||||
The student is able to explain basic algorithms, data structures, and programming techniques. The student is able to discuss the suitability and efficiency of these algorithms and techniques with respect to the data arrangement and size of the input data. The student is able to use the acquired theoretical knowledge to solve an assigned task. This includes: • Designing an efficient algorithm with respect to the assigned task and properties of the input data. • Choosing suitable data structures for storing and manipulating data. • Writing a program in a specific programming language. • Composing appropriate tests, debugging, and modifying the program according to the test results. The student is able to document their work. They are able to justify their decisions regarding the algorithm, data structures, and implementation with respect to the size and arrangement of the input data. The student is able to use the acquired knowledge and skills in different contexts of different programming languages. This means that the student is able to: • Understand the principles of algorithms and data structures regardless of the programming language chosen. • Apply their knowledge and skills to solve problems in various programming languages. • Quickly learn a new programming language using existing knowledge. In addition to the above knowledge and skills, the student also demonstrates knowledge and understanding of the principles of object-oriented programming. • The student knows the basic concepts of OOP, such as classes, objects, inheritance, encapsulation, and polymorphism. • They are able to define and use classes and objects in program code. • They understand the principle of inheritance and are able to apply it in practice. • They are able to implement data encapsulation in objects. • They are able to use polymorphism to simplify and streamline code. • They are able to justify the use of OOP depending on the type and complexity of the program. • They are able to design and implement object-oriented programs with an emphasis on their modularity. |
|||||||||
|
|||||||||
Accreditation | |||||||||
11000 - Univerzita Karlova | |||||||||
251/24 | |||||||||
29.5.2024 | |||||||||
29.5.2034 | |||||||||
Further detailed information | |||||||||
14 | |||||||||
143 (total number of hours) | |||||||||
143 hodin přímé výuky, 353 hodin studijní zátěže celkem | |||||||||
2 | |||||||||
Software and applications development and analysis (0613) | |||||||||
Written examination Project work Continuous evaluation Oral examination |
|||||||||
|
|||||||||
30.9.2024 | |||||||||
26.9.2025 | |||||||||
![]() |
|||||||||
![]() |
|||||||||
Institutional Quality Assurance | |||||||||
Ensured by CU’s IEB as a part of the internal quality assurance process | |||||||||
Ensured by CU’s IEB as a part of the internal quality assurance process | |||||||||
Date and venue of the course | |||||||||
30.09.2024 | |||||||||
26.9.2025 | |||||||||
2024/2025 | |||||||||
winter semester | |||||||||
Malostranské náměstí 25, 118 00 Praha | |||||||||
Information for applicants | |||||||||
0 Kč / course | |||||||||
Mgr. Lenka Forstová, tel: 951554110 | |||||||||
forstova@ksvi.mff.cuni.cz | |||||||||
![]() |
|||||||||
Enrolment information | |||||||||
![]() |