Module summary |
Computer Science 1 |
MKIB1104 |
Prof. Dr. Patrick Baier |
12 ECTS points / 12 Contact hours |
1st Semester |
none |
none |
The courses of this module teach the students fundamental programming and algorithmic skills. The students should be enabled to analyze small problems, find solutions to these problems, and develope them in the Java programming language. |
Written Exam 120 Min. (graded) |
Course Computer Science 1
| |
MKIB1114.a | Lecture |
Prof. Dr. Ulrich Bröckl | German |
5/4 | Module exam |
With weekly exercises the students deepen the practical contents of the lecture on the computer. They use an integrated Java development environment to create, test and modify programs. In the following exercises the students program simple calculations with Java using variables, expressions and control structures. This also includes graphical data processing tasks. Later, the students develop object-oriented programs on the computer. In the end, they solve recursive problems and implement solution strategies with the help of backtracking. | |
Selected exercises with solutions, slides in PDF format, Java programs and their documentation as Javadoc. Supplementary Java exercises with solutions to deepen the programming skills. | |
Lecture participation. Solving simple exercises in the lecture with teacher support. |
Course Computer Science 1 Exercise
| |
MKIB1124 | Exercise |
Prof. Dr. Ulrich Bröckl | German |
3/4 | Exercise 1 Semester (not graded) |
With weekly exercises the students deepen the practical contents of the lecture on the computer. They use an integrated Java development environment to create, test, and modify programs. In the following exercises the students program simple calculations with Java using variables, expressions and control structures. This also includes graphical data tasks. Later, the students develop object-oriented programs on the computer. In the end, they solve recursive problems and implement solution strategies with the help of backtracking. | |
Practical assignment in a computer laboratory. |
Course Theoretical Computer Science
| |
MKIB1114.b | Lecture |
Prof. Dr. Heiko Körner | German |
4/4 | Module exam |
This course gives an introduction to the theory of formal languages. The Chomsky hierarchy will serve as a model to classify these languages by their computational complexity. Modern computers are represented by finite state automatons, showing theier principal limits. The students also learn how to apply several proof techniques. The lecture include the following areas of theoretical computer science: mathematical logic, formal languages, proof techniques, the O-calculus, finite automata, regular languages and expressions, the Chomsky hierarchy, the pumping lemma for regular and context-free languages and the minimization of finite automata by the theorem of Myhill-Nerode. Furthermore, the course covers pushdown automata, the CYK algorithm and closure properties of regular and context-free languages. | |
The substance of the lecture will be discussed at the blackboard. Lecture notes containing the complete material are also available. Furthermore, there are sample solutions to all exercises. Literature: D. W. Hoffmann: Theoretische Informatik, 3. Auflage. Hanser, 2015. M. Sipser: Introduction to the Theory of Computation, 3rd edition. Cengage Learning, Inc., 2012. | |
This course will take place as a pure lecture. Numerous exercises deepen selected areas and will be discussed in tutorials. |