Einführung in die Programmierung (Wintersemester 2020/21)
Exportvorlesung Einführung in die Programmierung (für ET/IT, IKT, Physik, WiMa)
- Veranstalter: M.Sc. Roman Kalkreuth
- Vorlesung (4 SWS) + Übung (2 SWS) + Praktikum (4 SWS)
- Aufgrund der Corona-Pandemie wird diese Lehrveranstaltung in größeren Teilen online stattfinden.
- Die Vorlesungen werden im YouTube-Kanal des Dozenten bereitgestellt.
- Die Klausurtermine werden noch bekannt gegeben.
Klausur 17.02.2021
Dokumente
- Handreichung (Update 16.02.)
Help-Desk
Tag | Uhrzeit | |
---|---|---|
Mittwoch | 14-16 Uhr | https://lehros.cs.tu-dortmund.de/b/aar-zhy-apm |
Freitag | |
Matrix Chaträume
Matrix ist ein föderiertes Chat-System. Unsere Fachschaft betreibt einen Server dieser Föderation auf fachschaften.org und hat ausführlich dokumentiert, wie dieser genutzt werden kann.
- Account kann auf account.fachschaften.org anlegt werden (oder auf irgendeinem anderen Server der Matrix-Föderation)
- Link zum Raum für die Vorlesung Q&A: #eidp-vorlesung:fachschaften.org
- Link zum Raum für das Help-Desk: #eidp-helpdesk:fachschaften.org
Klausur
Die Klausuren werden in digitaler Form stattfinden.
Termine:
- 17.02.2021 13:00-16:00 Uhr
(Westfalenhalle Halle X) - 24.03.2021 08:00-11:00 Uhr
Zulassungsvoraussetzungen:
- Erfolgreiche Teilnahme an den Übungen (1 Jahr Gültigkeit)
- Erfolgreiche Teilnahme am Praktikum (unbegrenzte Gültigkeit)
Hinweis: Manche Prüfungsordnungen lassen eine Zulassung zur Klausur ohne Teilnahme am Praktikum zu. Allerdings werden dann beim Bestehen der Klausur weniger Leistungspunkte erreicht. Prüfen Sie dazu bitte die genauen Voraussetzungen bzw. Gegebenheiten in Ihrer Prüfungsordnung.
Termine
Die Vorlesung wird aufgrund der Home-Office Situation vorerst live über Zoom stattfinden. Die Vorlesungseinheiten werden aufgezeichnet und danach auf dem YouTube Kanal bereitgestellt.
- Meeting-ID: 934 5242 5931 Kenncode: 368320
Tag | Uhrzeit | Platform |
---|---|---|
Dienstag | 12:15 - 13:45 | Zoom |
Donnerstag | 14:15 - 15:45 |
Vorlesungsfolien
Die Folien werden regelmäßig hier zum Download bereitgestellt, damit sie ausgedruckt und während der Vorlesung mit Notizen versehen werden können.
Nr. | Thema | Download | Aktualisierungen | Code |
---|---|---|---|---|
0. | Organisatorisches | |||
1. | Einleitung | PDF PDF-2x2 | altersangaben.c | |
2. | Darstellung von Information | PDF PDF-2x2 | helloworld.cc limits.cc cast_char.cpp cast_short.cpp | |
Codierung von floats | ||||
3. | Kontrollstrukturen | PDF PDF-2x2 | asci.cc while.cc break.cc dowhile-cin.cc janein.cc increment.cpp loop_array.cpp | |
4. | Zeiger | PDF PDF-2x2 | pointer.cpp skalarprodukt-static.cpp skalarprodukt-dynamic.cpp matrix.cpp | |
5. | Funktionen | PDF PDF-2x2 | kap05.zip | |
6. | Gültigkeitsbereiche | PDF PDF-2x2 | kap06.zip | |
7. | Rekursion | PDF PDF-2x2 | kap07.zip | |
8. | Klassen | PDF PDF-2x2 | kap08.zip | |
9. | Elementare Datenstrukturen | PDF PDF-2x2 | kap09.zip | |
10. | Vererbung | PDF PDF-2x2 | kap10.zip | |
11. | Virtuelle Funktionen | PDF PDF-2x2 | kap11.zip | |
12. | Ausnahmebehandlung | PDF PDF-2x2 | kap12.zip | |
13. | Datenstrukturen und Algorithmen | kap13.zip | ||
14. | Standard Template Library | kap14.zip | ||
15. | Klausurvorbereitung |
Anmeldung
Alle Studierenden werden gebeten, sich im LSF anzumelden. Die Veranstaltungsnummer ist 048001.
Zielgruppen
- BSc Elektro- und Informationstechnik (ET/IT): Pflichtfach (Modul IF-001)
- BSc Informations- und Kommunikationstechnik (IKT): Pflichtfach (Modul IF-001)
- BSc Physik: Wahlpflichtfach
- BSc Wirtschaftsmathematik BPO 2015: Wahlpflicht (Modul MAT 107 b)
Inhalt
Die Veranstaltung führt in die Programmierung in C++ sowie in wesentliche Datenstrukturen und Algorithmen ein.
- Begriffsklärungen: Informatik allgemein, Teilgebiete der Informatik, Algorithmus; Abgrenzung zu anderen Wissenschaften
- Überblick: Rechnerarchitektur und Programmiersprachen; Darstellung von Information
- Programmierung in C++: grundlegende Datentypen und -strukturen, Kontrollstrukturen, Zeiger, Funktionen, Klassenkonzept, Vererbung, Polymorphie, Ausnahmebehandlung, Schablonen, Überblick STL
- Abstrakte Datentypen: Keller, Schlange, Listen, Binärbaum, Graphen, Komplexe Zahlen
- Algorithmen: Suchen, Sortieren, Hashing, Rekursionsprinzip, einfache Graphalgorithmen
- Formale Konzepte: Endliche Automaten, Grammatiken
- Einführung in die GUI-Programmierung (mit Qt)
Zudem werden einige Konzepte der neueren C++-Standards (C++11 et al.) eingeführt.
Nach erfolgreichem Abschluss des Moduls sind die Studierenden in der Lage, Algorithmen aus unterschiedlichen Bereichen strukturiert zu entwerfen und in der objektorientierten Programmiersprache C++ umzusetzen. Dabei wählen sie jeweils geeignete Datentypen aus. Sie kennen die Sprachkonstrukte von C++ und beherrschen die Grundkonzepte von objektorientierten Programmiersprachen. Sie können verschiedene Softwarewerkzeuge zur Unterstützung der Programmierung und der Fehlersuche einsetzen.
Literatur
- U. Breymann: C++ - Einführung und professionelle Programmierung, 9. Auflage, Hanser Fachbuchverlag 2007.
- U. Kaiser und C. Kecher: C++ - Von den Grundlagen zur professionellen Programmierung, 4. Auflage, Galileo Press 2008.
- U. Kirch-Prinz, Peter Prinz: C++ lernen und professionell anwenden, 4. Auflage, Vmi Buch 2007.
- D. May: Grundkurs Software-Entwicklung mit C++, Vieweg, Wiesbaden, 2003.
- A. Willemer: Einstieg in C++, 4. Auflage, Galileo Press 2009.
- J. Wolf: C++ von A bis Z - Das umfassende Handbuch, 2. Auflage, Galileo Press 2009.
- S.B. Lippmann, J. Lajoie und B.E. Moo: C++ Primer, 4. Auflage (dt. Ausgabe), Addison-Wesley, München, 2006. Anmerkung: Für den ambitionierten Leser.
- B. Stroustrup: Die C++ Programmiersprache, 4. Auflage, Addison-Wesley, München, 2000. Anmerkung: Die Referenz. Für Anfänger nicht leicht zu lesen.
- R. Grimm: C++11 > Der Leitfaden für Programmierer zum neuen Standard, Addison-Wesley, München, 2012. Anmerkung: Enthält alle Neuerungen des neuen Standards. Wir verwenden nur einen winzigen Bruchteil aus diesem Buch.