Course catalog: 252-0847-00L
Lecturers: Malte Schwerhoff,
Felix Friedrich
Primary educational objective is to learn programming with C++. After having successfully attended the course, students have a good command of the mechanisms to construct a program. They know the fundamental control and data structures and understand how an algorithmic problem is mapped to a computer program. They have an idea of what happens "behind the scenes" when a program is translated and executed. Secondary goals are an algorithmic computational thinking, understanding the possibilities and limits of programming and to impart the way of thinking like a computer scientist.
The course covers fundamental data types, expressions and statements, (limits of) computer arithmetic, control statements, functions, arrays, structural types and pointers. The part on object orientation deals with classes, inheritance and polymorphism; simple dynamic data types are introduced as examples. In general, the concepts provided in the course are motivated and illustrated with algorithms and applications.
Date | Message |
---|---|
21.12 |
Single PDFs with all slides are now available: lecture DE, lecture EN, handout DE, handout EN |
29.11 |
The dry-run exam (Moodle) is online, as is the master solution (PDF). Instructions have been emailed to you. |
29.11 |
Merged the Alexander Hedges | Tue 15:15-17:00 | CHN E 42 and Maximillian Holst | Tue 15:15-17:00 | LFW C 4 groups. The class will be given by Alexander Hedges at the same time in LFW C 4. |
28.11 |
Updated lecture slides 11 due to minor typos |
23.11 |
Published style guide. |
07.11 |
Updated lecture slides 8 due to minor typos |
15.10 |
Updated lecture slides 3 and 4 due to minor typos |
26.09 | Your personal C++ playground |
16.09 |
Registration to the Slack channel is open |
This is a plan. No plan survives contact with reality. We will constantly update lecture material before the lectures.
The registration for exercise sessions is already open: click here, log in with your nethz account and enrol in one of the listed exercise sessions.
The following exercise sessions are offered:
Time | Place | Assistant |
---|---|---|
Tue 15:15-17:00 | CAB G 59 | Adrian Langenbach |
Tue 15:15-17:00 | CHN D 44 | Christopher Lehner |
Tue 15:15-17:00 | CHN D 48 | David Sommer |
Tue 15:15-17:00 | Alexander Hedges | |
Tue 15:15-17:00 | HG D 5.1 | Eliza Wszola (EN) |
Tue 15:15-17:00 | HG E 33.5 | Vytautas Astrauskas (EN) |
Tue 15:15-17:00 | HG F 26.3 | Yannik Ammann |
Tue 15:15-17:00 | HG F 26.5 | Moritz Schneider |
Tue 15:15-17:00 | LFW C 4 | |
Wed 10:15-12:00 | ML H 41.1 | Viera Klasovita |
Wed 10:15-12:00 | HG D 3.1 | Benjamin Rothenberger |
Wed 10:15-12:00 | HG D 3.3 | Corminboeuf Etienne |
Wed 10:15-12:00 | HG D 5.1 | David Baur |
Wed 10:15-12:00 | HG D 5.3 | Max Egli |
Wed 10:15-12:00 | HG E 21 | Orhan Saeedi |
Wed 10:15-12:00 | HG E 33.5 | Patrik Hadorn |
Wed 10:15-12:00 | HG F 26.3 | Philippe Schlattner |
Wed 10:15-12:00 | HG G 26.3 | Tobias Klenze |
Wed 10:15-12:00 | LFV E 41 | Sefidgar Seyed Reza (EN) |
Assistants marked with EN teach in English, all others in German.
There will be 3 bonus exercises during the semester (see the agenda above for the schedule). By solving these exercises you will get up to 0.25 grade points added on top of your exam grade. In order to access the bonus exercises you need to unlock them in Code Expert by solving assignments from previous weeks and earning sufficiently many experience points (XP).
To facilitate the introduction to the lecture, especially for beginners in programming, we will provide an introductory tutorial, which can be completed autonomously. We strongly recommend to complete it in the first week of the semester.
Hint: The tutorial is available in both German and English. You can switch the language any time.
In order to get access to old exams and master solutions, please mark that you have understood the statement.
Bjarne Stroustrup: Einführung in die Programmierung mit C++, Pearson Studium, 2010 | Also available online from the ETH Domain
Stephen Prata, C++ Primer Plus, Sixth Edition, Addison Wesley, 2012
Andrew Koenig and Barbara E. Moo: Accelerated C++, Addison-Wesley, 2000.
Prof. Dr. Bernd Gärtner and Dr. Michael Hoffmann kindly provided a script (lecture notes) that covers the material presented in the lecture.