Computer Graphics
TU Braunschweig

Programmieren 2 SS'21
Vorlesung mit großer und kleiner Übung

Prof. Dr.-Ing. Martin Eisemann

Hörerkreis: Bachelor
Kontakt: prog2@cg.cs.tu-bs.de

Modul: INF-PRS-44
Vst.Nr.: 4210001, 4210002

Aktuelles

Die vorläufigen Prüfungsergebnisse sind weiter unten einzusehen und wurden den Teilnehmern zugesandt.

Die Prüfungseinsicht findet am 17.03.2022 um 10 Uhr statt im üblichen WebEx Raum (Link siehe unten).

Die Probeprüfung finden Sie hier.

Bei Inkonsistenzen mit dem Stud.IP haben die Informationen auf dieser Webseite vorrang. D.h. die Vorlesung ist Dienstags um 08:30 Uhr und die Programmiersprache ist hauptsächlich C++.

Beschreibung

Nach Abschluss dieses Moduls besitzen die Studierenden vertiefte Kenntnisse der imperativen und objektorientierten Programmierung. Sie sind in der Lage, mittelgroße Programme selbstständig zu entwickeln und dabei Aspekte der strukturierten Programmierung zu berücksichtigen.

Anmeldung

Für die Teilnahme an der Vorlesung und Übung ist lediglich eine Email von Ihrem TU Account an prog2@cg.cs.tu-bs.de mit folgenden Informationen erforderlich:

Name, Vorname, Studiengang, Bachelor oder Master, Matrikelnummer.

Die Anmeldung für die Prüfung erfolgt über das Prüfungsamt.

Inhalt

- Vertiefung der objektorientierten Programmierung anhand der Sprache C++
- Programmierung dynamischer und rekursiver Datenstrukturen
- Grundlagen der Parallelprogrammierung
- Grundlagen der Grafikprogrammierung
- Clean Code
- Datensammlungen und Collections
- Generizität
- Funktionen höherer Ordnung
- Speichermanagement
- Grundlagen der funktionalen Programmierung 

Ort und Zeit

LIVE Fragestunde.
Der Kurs selbst findet als Courseware im studip statt.

Wöchentlich Dienstags, 08:30–09:30 Uhr , beginnend am 13.04.2021.
Online (Zugang über WebEx - Programmieren 2 - Vorlesung).

Kickoff am Freitag 16.04.2021, 11:30–12:00 Uhr.

Wöchentlich Freitags, 11:30–13:00 Uhr, beginnend am 30.04.2021.
Online (Zugang über WebEx - Programmieren 2 - Übung).

Kickoff in der Woche vom 19.–23.04.2021.

Wöchentlich, beginnend in der Woche vom 03.05.2021.

07.03.2022, 08:30–10:30 Uhr mittels EvaExam

Vorlesungen

Die Vorlesung wird als Courseware im studip durchgeführt, d.h. Sie können müssen das bereitgestellte Video/Material bearbeiten. Die Vorlesungszeit kann für Fragen und vertiefende Thematiken genutzt werden, die nicht in der Courseware beantwortet werden konnten.

Die Vorlesungsfolien finden sie hier. Beachten Sie, dass die Folien nicht ausreichend sind für eine Vorbereitung auf die Prüfung und nur einen Bruchteil des Inhaltes der Courseware abbilden.

Große Übungen

In der ersten großen Übung gibt es eine kurze Einführung und ein paar allgemeine Infos zur Gruppeneinteilung und dem weiteren Ablauf.

Regulär:
In den folgenden Wochen gibt es jeweils...
- die Musterlösung des letzten Übungsblatts.
- Hinweise und Tipps zum neuen Übungsblatt.

Kleine Übungen

Die Vergabe der Plätze für die Termine der kleinen Übungen und die Einteilung der Arbeitsgruppen (je 3 Studierende) erfolgt über die Gruppen der Stud.IP-Übung.

In der ersten Woche (19.-23.04.) werden keine Lösungen kontrolliert, sondern:
Die Gruppen werden final abgesprochen.
Sie erhalten Zugriff auf die Abgabe-Repos auf dem Git Server.
Es gibt Hilfe, wenn Sie Probleme beim Setup haben.

Regulär:
Präsentation der eigenen Lösung (50% der Punkte werden benötigt).
Die Betreuer wählen pro Aufgabe eine Person für die Präsentation.

Die Präsentationen sind verpflichtender Teil der Studienleistung. Bei Abwesenheit wird die entsprechende Abgabe mit 0 Punkten bewertet.

Sollten sich im Laufe des Semesters terminliche Probleme mit Ihrem gewählten kl. Übungstermin ergeben, sodass Sie Ihre Abgaben nicht mehr präsentieren könnten, melden Sie sich frühzeitig bei uns, um einen möglichen Terminwechsel zu besprechen.

Aufgabenblätter

Die Aufgabenblätter (PDF) und Code-Vorgaben (ZIP) werden in der Stud.IP-Übung hochgeladen.

Blatt 1

Bearbeitung: 16.04.–29.04.
Präsentation: 03.05.–06.05.

Blatt 2

Bearbeitung: 30.04.–06.05.
Präsentation: 10.05.–13.05. 17.05.–20.05.

Blatt 3

Bearbeitung: 07.05.–20.05.
Präsentation: 24.05.–27.05. 31.05.–03.06.

Blatt 4

Bearbeitung: 21.05.–03.06. 21.05.–05.06.
Präsentation: 07.06.–10.06.

Blatt 5

Bearbeitung: 04.06.–10.06.
Präsentation: 14.06.–17.06.

Blatt 6

Bearbeitung: 11.06.–17.06.
Präsentation: 21.06.–24.06.

Blatt 7

Bearbeitung: 18.06.–24.06.
Präsentation: 28.06.–01.07.

Blatt 8

Bearbeitung: 25.06.–01.07.
Präsentation: 05.07.–08.07.

Blatt 9

Bearbeitung: 02.07.–08.07.
Präsentation: 12.07.–15.07.

Prüfung

Prüfungszeitraum siehe unter Ort und Zeit.
Eventuelle Änderungen werden in der Vorlesung und auf dieser Webseite rechtzeitig bekanntgegeben.

  • Prüfungsform: (Klausurähnliche) Hausarbeit mit EvaExam
  • Scheinerwerb durch Bestehen der Prüfung (mind. 50% der Punkte, ggf. Ausnahmen durch Anhang 5 der APO)
  • Voraussetzung zum Modulabschluss: mindestens 50% der Punkte aus den Übungen erreicht.
  • Studierende müssen sich beim Prüfungsamt anmelden!

Prüfungsdetails

Untenstehend sehen Sie den Notenschlüssel der letzten Prüfung.

Die Prüfungsergebnisse werden den Teilnehmern per Email zugesandt.

TL;DR

  1. Prüfung am 07.03.2021 von 08:30 - 10:00 Uhr. Zugang ist ab Beginn für 15 Minuten möglich.
  2. Zur Teilnahme benötigen Sie eine TAN und einen Link zum EvaExam System, welche Ihnen ca. 3 Tage vor der Prüfung per Email zugeschickt werden. Sollten Sie 2 Tage vorher noch keine TAN erhalten haben, melden Sie sich bitte umgehend mit folgenden Angaben [Vor- und Nachname, Matrikelnummer, Studiengang, BA oder MA, TU Emailadresse] unter prog2@cg.cs.tu-bs.de. Sie bekommen dann eine neue TAN.
  3. Während der Prüfung steht Ihnen unter https://tu-braunschweig.webex.com/meet/m.eisemann ein Webex Raum für Fragen zur Verfügung. Bitte loggen Sie sich dort nur ein, wenn akute Fragen bestehen, um die Übersicht zu bewahren.
  4. Nach Beendigung der Prüfung müssen Sie noch am gleichen Tag die Eigenständigkeitserklärung in den Upload-Ordner hochladen. Das Passwort lautet PRog2. Benennen Sie die Datei bitte im folgenden Format Eigenstaendigkeitserklaerung_Programmieren2_Matrikelnummer.pdf (bzw. .png oder .jpg, falls Sie kein PDF erstellen können). Die Eingabe von "Full name" und "E-Mail address" ist unabhänig vom Dateinamen bei Cloudstorage-Uploads nötig.

Weitere Details

Bitte beachten Sie: Sollten Sie eine TAN erhalten haben, sich aber von der Prüfung abgemeldet haben, so dürfen Sie nicht mittels dieser TAN an der Prüfung teilnehmen! 

Technische Voraussetzungen und Rahmenbedingungen

Wir empfehlen die Prüfung an einem PC durchzuführen und nicht am Handy oder Tablet!

Beachten Sie, dass die Verwendung der Browsernavigation (Vor/Zurück/Aktualisieren) während der Prüfung NICHT verwendet werden sollte und zu einem Abbruch der Prüfung führen kann. Ebenso natürlich ein Schließen des Browsers.

Eine einmalig begonnene Prüfung kann nicht erneut begonnen werden. Loggen Sie sich also nicht aus während der Prüfung!

Bei technischen Problemen haben Sie als Prüfling die Nachweispflicht, dass etwas nicht wie erwartet funktioniert hat (bspw. über Screenshots und ähnliches).

Eigenständigkeitserklärung

Wie bei jeder Online-Prüfung sind Sie verpflichtet eine Eigenständigkeitserklärung abzugeben. Diese können Sie sich hier bereits herunterladen: Eigenständigkeitserklärung.

Füllen Sie diese nach der Prüfung aus, benennen Sie die Datei um, so dass ihre Matrikelnummer im Dateinamen steht, bspw. Eigenstaendigkeitserklaerung_Programmieren2_10021313.pdf. Bitte verwenden Sie nur gängige Dateiformate für den Upload, idealerweise PDF, sonst JPG oder PNG.

Die Abgabe hat am Tag der Prüfung über einen Upload-Folder zu erfolgen (Siehe oben unter TL;DR. Der Link wird ab dem Tag nach der Prüfung ungültig! Bei technischen Problemen, dokumentieren Sie diese bitte mittels Screenshot und senden nur dann die Eigenständigkeitserklärung zusammen mit dem Screenshot per Email an prog2@cg.cs.tu-bs.de).

Das Passwort für den Upload-Ordner ist PRog2

Bei Aufruf des obigen Links sehen Sie folgendes Fenster:

Geben Sie das oben genannte Passwort ein und klicken Sie auf "OK".

Danach sehen Sie ein Fenster, dass ungefähr wie folgt aussieht:

Geben Sie hier als Benutzernamen Ihre Matrikelnummer ein und ihre TU Emailadresse.

Es erscheint folgender Dialog:

Hier können Sie die Eigenständigkeitserklärung entweder per Drag&Drop ablegen oder über den Button "Datei hinzufügen" auswählen. Klicken Sie dann auf "Upload".

Der grüne Balken, sowie ein kleines Fenster in der unteren linken Ecke teilt Ihnen mit, wenn der Upload abgeschlossen ist.

Klicken Sie abschließend auf "Schließen". Der Upload der Eigenständigkeitserklärung war erfolgreich.

Inhalte

Die Fragen werden voraussichtlich mehrheitlich kprim Fragen sein (d.h. es gibt pro Frage einen Aufgabentext und 4 Aussagen dazu, die als richtig oder falsch gekennzeichnet werden müssen. Es gibt 1 Punkt, wenn alle Aussagen korrekt markiert wurden. 0,5 Punkte, wenn 3 Aussagen korrekt markiert wurden, 0 Punkte bei 0-2 richtig markierten Aussagen. Es gibt keine negativen Punkte, es lohnt sich also notfalls zu raten. Ein Beispiel ist weiter unten gegeben. Ein Minimalbeispiel können Sie auch unter https://eva.tu-braunschweig.de/evaexam/online.php?pswd=prog2 abrufen, um sich mit der Fragenform vertraut zu machen. Bitte beachten Sie, dass dieses Onlinequiz weder vom Umfang, noch von der Schwierigkeit, noch von den Inhalten Rückschlüsse auf die wirkliche Prüfung gibt, sondern Ihnen lediglich die Möglichkeit bietet das System einmal auszuprobieren.)

Wir behalten uns vor auch andere Fragetypen zu verwenden, bspw. Single/Multiple-Choice oder Lückentexte.

Hilfsmittel

Da es sich um eine (klausurähnliche) Hausarbeit handelt, sind Ihnen Hilfsmittel (Internet, Bücher, Aufzeichnungen, etc.) erlaubt. Es ist jedoch in jedem Falle untersagt, die Hilfe dritter Personen in Anspruch zu nehmen oder sich mit anderen Personen auszutauschen. 

Anmeldung und weitere Informationen

Eine Anmeldung über das jeweilige Prüfungsamt ist zwingend erforderlich! Erst dann bekommen Sie kurz vor der Prüfung weitere Zugangsinformationen zugeschickt. (Da persönliche TAN Nummern verschickt werden müssen, erfolgt die Versendung erst wenige Tage vor der Prüfung, leider ist dies nicht anders möglich.)

Bitte beachten Sie folgenden Passus, der auch in der online Prüfung bzw. der Einladungsemail angezeigt werden sollte:

"Mit dem Öffnen der Prüfungsaufgaben bestätigen Sie, dass Sie sich geistig und körperlich in der Lage befinden, die Prüfung abzulegen (d.h. prüfungsfähig sind).

Mit dem Beenden und Abschicken des Prüfungsbogens bestätigen Sie, dass Sie die oben bezeichnete Prüfung selbstständig und ohne unzulässige fremde Hilfe sowie ohne Heranziehung nicht zugelassener Hilfsmittel bearbeitet haben. Sie bestätigen, dass Ihnen bewusst ist, dass der Verstoß gegen prüfungsrechtliche Regelungen über die Täuschung bei der Erbringung von Prüfungsleistungen nach § 11 Abs. 4 APO als Täuschungsversuch gewertet wird und damit zum Nichtbestehen der Prüfung führt. In besonders schweren Fällen z. B. bei Plagiaten, Verwendung nicht zugelassener elektronischer Hilfsmittel, auch zur Kommunikation während der Prüfung, bei organisiertem Zusammenwirken mehrerer Personen kann der Prüfungsausschuss zusätzlich das endgültige Nichtbestehen der Prüfung und damit das Scheitern im Studiengang feststellen.

Hilfe während der Prüfung

Während der Klausur steht ihnen zusätzlich ein WebEx zur Verfügung, in welchem Sie Fragen an die Aufsicht stellen können ( https://tu-braunschweig.webex.com/meet/m.eisemann ). Bitte loggen Sie sich dort nur ein, wenn Sie akute Fragen haben. Dort werden Sie bei Fragen in eine Breakout Session eingeladen, bitte schreiben Sie nichts inhaltliches in den Chat, dies könnte als Täuschungsversuch angesehen werden.

kprim Beispiel

Hier sei einmal ein Beispiel gegeben wie eine kprim Aufgabe aussehen könnte.

Gegeben folgender Source Code: [Hier stünde ein entsprechender Source Code]

Prüfen Sie die folgenden Aussagen auf ihre Korrektheit.

  1. Der Rückgabetyp der Funktion sollte double und nicht int sein, da sonst eine implizite Konvertierung stattfindet. richtig/falsch
  2. In Zeile 5 würde der Compiler eine Fehlermeldung werfen, weil eine nicht initialisierte Variable verwendet wird. richtig/falsch
  3. Der Code in Zeile 10 würde effizienter, wenn dort folgender Code stehen würde:   richtig/falsch
  4. Statt einer verketteten Liste wäre ein Array besser geeignet in obigem Code, da Einfüge und Löschoperationen sehr häufig ausgeführt werden. richtig/falsch

Bitte beachten Sie, bei einer kprim Aufgabe können auch alle Aussagen richtig, oder alle falsch sein!

Ergänzungsprüfung

Falls Sie eine mündliche Ergänzungsprüfung benötigen, weil Sie im letzten regulären Versuch die Prüfung nicht bestanden haben, so senden Sie bitte umgehend nach Erhalt der Note (also wenn diese offiziell beim Prüfungsamt eingetragen wurde) eine Email mit der Bitte um mündliche Ergänzungsprüfung an prog2@cg.cs.tu-bs.de unter Angabe ihres vollen Namens, Matrikelnummer, TU Emailadresse und Studiengang.

Die mündlichen Ergänzungsprüfungen finden in der Regel gesammelt jeweils 1x im Semester statt. Ein Termin wird ihnen rechtzeitig vorher mitgeteilt.