Systemprogrammierung - AIN/2
Sommersemester 2024



Die Klausur

findet voraussichtlich am Freitag, 26. Juli 2024 von 09:00 - 10:30 Uhr in Raum O-102/103 statt.
Bitte beachten Sie wegen eventueller Termin- und Raumänderungen unbedingt die Aushänge.
Als einziges Hilfsmittel ist ein Spickzettel im Umfang eines beidseitig beschriebenen oder bedruckten DIN-A4-Blatts erlaubt.

⤵ SYPR-Klausurvorbereitung.pdf
⤵ SYPR-Probeklausur.pdf

+++ Lerntipp +++ Falls Sie sich noch nicht sicher fühlen, dann nutzen Sie beim ersten Lösen der Probeklausur zunächst alle verfügbaren Hilfsmittel (Rechner, Lehrveranstaltungsunterlagen, Internet). Tun sie das frühzeitig schon einige Wochen vor der Prüfungszeit.
Lösen Sie die Aufgaben der Probeklausur aber auf jeden Fall auch mal unter Zeitdruck mit nur den im Ernstfall erlaubten Hilfsmitteln. Das können Sie auch aufgabenweise tun. Die Punktzahl einer Aufgabe gibt an, wieviel Prozent der Gesamtbearbeitungszeit Sie für die Aufgabe in etwa aufwenden sollten.

Lernplattform Moodle:

Schreiben Sie sich bitte in den Moodle-Kurs "Systemprogrammierung" von AIN ein.


Die Folien aus der Vorlesung:

⤵ SYPR-Teil-1.pdf – Einführung
⤵ SYPR-Teil-2.pdf – C Daten - Literale, Variablen, Typen
⤵ SYPR-Teil-3.pdf – C Anweisungen - Ausdrücke, Operatoren, Ablaufsteuerung
⤵ SYPR-Teil-4.pdf – C Programme - Funktionen, Übersetzungseinheiten, Bibliotheken
⤵ SYPR-Teil-5.pdf – POSIX - Elementare Ein-/Ausgabe, Dateizugriff
⤵ SYPR-Teil-6.pdf – Einführung in C++: Referenzen, Operator-Overloading, Namensräume, Klassen
⤵ SYPR-Teil-7.pdf – C++ Standardbibliothek: Templates, Ein-/Ausgabe, Strings, Container, Algorithmen, Iteratoren, intelligente Zeiger
⤵ SYPR-Teil-8.pdf – Werkzeuge - Programmerstellung, Fehlersuche
Literaturliste

Die PDF-Dateien enthalten anklickbare Notizen, die von Browser-Plugins oft nicht gut dargestellt werden.
Laden Sie die Dateien deshalb immer herunter und verwenden Sie einen PDF-Viewer wie z.B. Adobe Acrobat Reader DC.

+++ Lerntipp +++ Rufen Sie sich vor jeder Vorlesung in Erinnerung, was in der vergangenen Vorlesung besprochen wurde. Lernen Sie die neuen Fachbegriffe. Nutzen Sie den Index der einzelnen Vorlesungsteile, um Ihre Kenntnis der Fachbegriffe zu prüfen und zu verbessern. Planen Sie dafür genug Zeit ein.

Die Beispiel-Programme aus der Vorlesung
erscheinen hier nach und nach ...

Teil 2 Makefile intliteral.c doubleliteral.c charliteral.c intvar.c intsum.c pointervar.c (mit Hauptspeicherbelegung) iptrptr.c constpointer.c voidpointer.c name_adresse.c arrayvar.c (mit Hauptspeicherbelegung) arraypointer.c (mit Hauptspeicherbelegung) stringvar.c matrixvar.c matrixpointer.c matrixpointerpointer.c enumvar.c structvar.c intlist.c unionvar.c
Teil 3 verzweigung.c fallunterscheidung.c while-schleife.c do-schleife.c for-schleife.c spruenge.c
Teil 4 main.c (mit Hauptspeicherbelegung) max.c minmaxsum-pointer.c minmaxsum.c localglobalvar.c max-makro.c inparam.c outparam.c localglobalvar/ date/ minmax/ qsort.c
Teil 5 count.c copy.c list.c
Teil 6 io.cpp einstieg.cpp einstieg-mit-fehlerbehandlung.cpp arrayvar.cpp heap.cpp unique_ptr.cpp Makefile function-overloading.cpp operator-overloading.cpp Namensraum/ Kapselung in C/ Klasse/ eingebettete Klasse/ Vererbung/ Schnittstelle/ dynamic_cast.cpp
Teil 7 Templates/ ostream.cpp istream.cpp stringvar.cpp htwg::string/ htwg::vector/ htwg::array/ vectorvar.cpp arrays.cpp max.cpp find.cpp intlist mit std::find/ htwg::unique_ptr/ htwg::shared_ptr/ Intelligente Zeiger/ intlist mit std::unique_ptr/
Teil 8 hallo/ makevar.mak nichtsalsfehler.c

+++ Lerntipp +++ Schreiben Sie die Programmbeispiele aus der Vorlesung ab und bringen Sie sie zum Laufen. Notieren Sie sich jeweils mit eigenen Worten, was die Programme tun, und versuchen Sie einige Zeit später, die Programme aufgrund dieser Notizen selbstständig neu zu schreiben. Überlegen Sie sich auch eigene Abwandlungen der Programme. Tun Sie dies laufend während des Semesters.

Die Übungsaufgaben
erscheinen hier nach und nach ...

Hinweise zu den Übungen
Linux-Arbeitsumgebung
Einstieg am 22.3. (Gruppe 3) / 28.3. (Gruppen 1 und 2)   (Schaubild mit den Arbeitschritten)
Aufgabe 1: C Grundtypen (Abgabe: 11./12.4.)
Aufgabe 2: C Arrays (Abgabe: 25./26.4.)
Aufgabe 3: C Strings (Abgabe: 10.5.)
Aufgabe 4: C Aufzählungen, Strukturen, Varianten, Funktionen, POSIX (Abgabe: 6./7.6.)   Achtung: aufgabe4.tar.gz am 16.5. um 16:45 Uhr korrigiert!
Aufgabe 5: C++ Klassen, Iteratoren, Übersetzungseinheiten (Abgabe: 20./21.6.)
Aufgabe 6: Bibliotheken, Shell-Scripts, Makefiles (Abgabe: 4./5.7.)

+++ Lerntipp +++ Falls Sie in den Übungen viel Hilfe in Anspruch genommen haben, lösen Sie die Übungsaufgaben nach einiger Zeit nochmals selbstständig und inklusive aller Bonusaufgaben.


Prof. Dr. H. Drachenfels
Hochschule Konstanz - Impressum - Datenschutzerklärung
Letzte Änderung: 20.6.2024