Einführung in die Programmierung (Wintersemester 2019/20)
Exportvorlesung Einführung in die Programmierung (für ET/IT, IKT, Physik, WiMa)
- Veranstalter: Dr.-Ing. Horst Schirmeier
- Vorlesung (4 SWS) + Übung (2 SWS) + Praktikum (4 SWS)
- Klausurtermine: 05.02.2020 (13-16 Uhr), 19.03.2020 (8-11 Uhr)
- Informationen zu den Klausuren (Anmeldung, Ergebnisse, Einsichtnahmetermine)
- Update 27.02.: Die Ergebnisse zur Klausur vom 05.02.2020 sind via BOSS einsehbar, die Einsichtnahme findet am 10.03.2020 10-12 Uhr statt.
- Update 15.03.: Wegen der aktuellen Entwicklungen rund um das Coronavirus sagt die TU Dortmund alle Klausuren bis 19.04.2020 ab, und damit auch den EidP-Klausur-Nebentermin am 19.03. → weitere Informationen
- Update 15.05.: Die EidP-Klausur vom 19.03. wird am 25.06. 14-17 Uhr nachgeschrieben. Die Anmeldelisten vom März bleiben bestehen. Ob darüber hinaus Nachmeldungen möglich sind, steht noch nicht fest; bei Interesse schreiben Sie bitte bis zum 29.05.2020 dem Dozenten eine E-Mail.
- Alle angemeldeten Teilnehmer wurden per E-Mail über die Details zur Klausur informiert. Falls Sie angemeldet sind und keine Informationen bekommen haben, prüfen Sie bitte Ihren Spam-Ordner und/oder melden Sie sich unbedingt beim Dozenten!
- Update 16.07.: Die Ergebnisse zur Nachholklausur vom 25.06.2020 sind via BOSS einsehbar.
- Update 14.08.: Die Einsichtnahme zur Nachholklausur vom 25.06.2020 findet am 21.08.2020 statt; Details dazu gab es am 18.08. per E-Mail. (Bitte melden Sie sich beim Dozenten, falls Sie keine erhalten haben.)
Am 28.01.2020 findet in der Vorlesung eine Wiederholung besonders gewünschter Themen statt (u.a. DEAs, kontextfreie Grammatiken, Polymorphie, Zeigerarithmetik).
Termine
Tag | Uhrzeit | Hörsaal |
---|---|---|
Dienstag | 12:15 - 13:45 | HG II/HS 3 |
Donnerstag | |
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.
Vorlesungsfolien
Die Folien werden regelmäßig vor der Vorlesung hier zum Download bereitgestellt, damit sie ausgedruckt und während der Vorlesung mit Notizen versehen werden können.
Nr. | Thema | Download | Aktualisierungen |
---|---|---|---|
0. | Organisatorisches | PDF, PDF 2x2 | 10.10.2019: Termine Praktikum ET/IT/IKT |
1. | Einleitung | PDF, PDF 2x2 | |
2. | Darstellung von Information | PDF, PDF 2x2 | |
Codierung von floats | |||
3. | Kontrollstrukturen | PDF, PDF 2x2 | |
4. | Zeiger | PDF, PDF 2x2 | |
5. | Funktionen | PDF, PDF 2x2 | |
6. | Gültigkeitsbereiche | PDF, PDF 2x2 | |
7. | Rekursion | PDF, PDF 2x2 | |
8. | Klassen | PDF, PDF 2x2 | |
9. | Elementare Datenstrukturen | PDF, PDF 2x2 | |
10. | Vererbung | PDF, PDF 2x2 | |
11. | Virtuelle Methoden | PDF, PDF 2x2 | |
ANSI color escape sequences (stack overflow), Weihnachtsbaum-C++-Quellcode | |||
12. | Ausnahmebehandlung | PDF, PDF 2x2 | |
13. | Datenstrukturen & Algorithmen | PDF, PDF 2x2 | |
14. | Standard Template Library (STL) | PDF, PDF 2x2 | |
15. | GUI-Programmierung mit Qt | PDF, PDF 2x2 | |
16. | Wiederholung ausgewählter Themen | PDF, PDF 2x2 | 28.01.2020: 2x Tippfehler Zeiger-Aufgabe |
Lösung zur Zeiger-Aufgabe | |||
17. | Besprechung Evaluation, Zusammenfassung, Ausblick | PDF, PDF 2x2 | |
Evaluationsergebnisse |
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.