VL: Programmieren in C++ (Modulnummer CS 501)
CS 501 Programmieren in C++
Prof. Dr. Bernhard Seeger
Dipl.-Inf. Daniel Schäfer

geplante Termine: Dienstag 8:15-09:45 und Mittwoch 10:15-11:45 HS III, Lahnberge

Tutorium Christian Authmann, Donnerstag, 10:15 - 11:45 HS I, Lahnberge, erstes reguläres Tutorium am 22.10.08

Am Donnerstag den 15. Oktober findet von 10:15-11:45 Uhr ein optionales Tutorium im PC-Saal des FB 12 statt. In dieser Zeit können Sie sich mit den im weiteren Übungsbetrieb und in den Zwischenklausuren verwendeten Entwicklungswerkzeugen vertraut machen und ggf. Hilfestellung bei der Einrichtung erhalten.

Terminänderung: Die Tutorien finden ab dem 29.10.08 donnerstags von 10:15-11:45h statt.

Wichtig: Änderungen vorbehalten! Änderungen werden in der Vorlesung und auf dieser Seite bekannt gegeben.
Ankündigungen:
  • 09.11.2009 - Die erste Zwischenklausur ist korrigiert und kann morgen (Dienstag, 10.11.09) nach der Vorlesung in HS III bzw. später bei Daniel Schäfer (Büro 04 C30) eingesehen werden. Die Rückgabe der Zwischen- und Abschlussklausuren erfolgt erst am Ende des Semesters!
  • 19.11.2009 - Der Nachholtermin für die am Mittwoch den 18.11.2009 ausgefallene Vorlesung findet am Freitag den 20.11.2009 von 10:15h bis 11:45h in HS III statt.
  • 30.11.2009 - Die zweite Zwischenklausur ist korrigiert und kann am Dienstag, den 01.12.2009 nach der Vorlesung eingesehen werden. Eine spätere Einsicht ist bei Daniel Schäfer (Büro 04 C30) möglich.
  • 16.12.2010 - Die Anmeldelisten zur Modulprüfung werden ab heute in den Vorlesungen bzw. im Büro von Daniel Schäfer ausgelegt. Die Anmeldung muss bis 4 Wochen vor Semesterende - also spätestens bis zum 15.01.2010 - erfolgen. Für weitere Informationen siehe: http://www.uni-marburg.de/fb12/studium/lehrveranst/anmeldungZumodulepruefungen
  • 06.01.2010 - Die dritte Zwischenklausur ist korrigiert und kann ab sofort im Büro von Daniel Schäfer (04C30) bzw. am Dienstag, den 12.01.2010 nach der Vorlesung eingesehen werden.
  • 19.01.2010 - Die Abschlussklausur wird aus Platzgründen in Hörsaal IV und Hörsaal V (Lahnberge) stattfinden.
  • 09.02.2010 - Die Abschlussklausur ist fertig korrigiert und kann am 10.02. zum Vorlesungstermin in HS III, bzw. danach in meinem Büro eingesehen werden. Die Rückgabe der Klausuren erfolgt nach einer Widerspruchsfrist vier Wochen später.
  • 10.02.2010 - Die Nachholklausur findet aller Voraussicht nach am Dienstag, den 06. April 2010 statt. Raum und Uhrzeit werden noch bekanntgegeben.
  • 15.02.2010 - Die Scheine können voraussichtlich gegen Ende dieser Woche im Sekretariat C4 bei Frau Kessler abgeholt werden.
  • 24.03.2010 - Die Nachklausur findet wie bereits angekündigt am Dienstag, den 06. April 2010 ab 10:00h s.t. in Hörsaal IV (Lahnberge) statt. Im gleichen Zeitraum wird auch die Klausur "Effiziente Algorithmen" in Hörsaal IV beaufsichtigt.
Fachgebiet Klassifikation Semester Fortsetzung Skript
Informatik Hauptstudium, Nebenfach >=3 nein ja, online
Bemerkungen: Info für Bachelor-Studierende: Diese Veranstaltung dient zur Berufsvorbereitung.
Info für Diplom-Studierende: Im Diplomstudiengang Informatik wird der Leistungsnachweis nicht anerkannt.
Info für Master-Studierende: Im Masterstudiengang kann das Modul nicht eingebracht werden.
Info für Lehramt-Studierende: Das Modul kann als Wahlpflichtveranstaltung im Bereich Systementwicklung absolviert werden.
Voraussetzungen: Praktische Kenntnisse in mindestens einer anderen Programmiersprache, wie z.B. Java. Erfahrungen im Umgang mit Windows XP und Linux.

Für die Zwischenklausuren benötigen Sie einen Account am Fachbereich 12. Falls Sie noch keinen haben, beantragen Sie ihn bitte sofort. Informationen gibt es hier:

Klausuren: Es werden vier Zwischenklausuren und eine Abschlussklausur am Ende des Semesters geschrieben. Die Zwischenklausuren bestehen aus Programmiertests (ca. 45 min), die Sie am Rechner alleine lösen sollen. Sie dienen dazu, sicherzustellen, dass Sie genügend Programmiererfahrung gesammelt haben. In der Klausur werden Konzepte und Zusammenhänge abgefragt, wenige Programmieraufgaben gestellt und Fachwissen abgefragt. Die Klausur wird ohne Hilfsmittel auf Papier bearbeitet.

Die Klausuren starten in der Regel pünktlich. Kommen Sie etwas früher, damit Sie genug Zeit für alle Vorbereitungen haben.

  1. Zwischenklausur: Dienstag, 3. November 2009, 08:15 - 09:00, PC-Saal FB12, Lahnberge
  2. Zwischenklausur: Dienstag, 24. November 2009, 08:15 - 09:00, PC-Saal FB12, Lahnberge
  3. Zwischenklausur: Dienstag, 15. Dezember 2009, 08:15 - 09:00, PC-Saal FB12, Lahnberge
  4. Zwischenklausur: Dienstag, 26. Januar 2009, 08:15 - 09:00, PC-Saal FB12, Lahnberge.

Mögliche Terminänderungen werden hier und in der Vorlesung rechtzeitig bekannt gegeben!

Abschlussklausur (50% der Gesamtpunktzahl): Dienstag, 09. Februar 2010, 8:00 - 10:00 Uhr in HS IV und HS V, Lahnberge. Die Bearbeitungszeit wird 90 Minuten betragen. Zur Vorbereitung steht Ihnen eine Klausur aus dem letzten Wintersemester zur Verfügung.

Die Nachholklausur findet am Dienstag, den 06. April 2010 ab 10:00h s.t. in Hörsaal IV (Lahnberge) statt (Dauer: 90min.).

Die Abschlussklausur erfordert eine verbindliche Anmeldung, die spätestens am 15.01.2010 (vier Wochen vor Semesterende) erfolgt sein muss.

Scheinkriterien: Mindestens 50% der Gesamtpunktzahl der vier Zwischenklausuren und der Abschlussklausur, bzw. 50% der Gesamtpunktzahl der Nachschreibeklausur.
Folien Code-Beispiele und Ergänzungen aus der Vorlesung
Folien und Beispiele zur Anbindung von C++ und Java mittels JNI
Übungsblätter: Beachten Sie bitte die Richtlinien zur Bearbeitung der Aufgaben!
  • Blatt 1
  • Blatt 2
  • Blatt 3
  • Blatt 4
  • Blatt 5
  • Blatt 6, Datei debug.c für Aufgabe 6.3
  • Blatt 7, Datei A72.zip für Aufgabe 7.2.
    In den letzten beiden Zwischenklausuren sollen Sie Eclipse benutzen, daher ist es sinnvoll, die Aufgaben bereits in Eclipse zu lösen!
  • Blatt 8
    • Aufgabe 8.1 ist mit dem aktuellen Kenntnisstand noch nicht lösbar und wird auf nächste Woche verschoben.
    • In Aufgabe 8.2 dürfen Sie auf der Musterlösung zu Blatt 7 von Christian Authmann aufbauen: SchiffeVersenken_part1.zip.
  • Blatt 9, Datei A91.zip für Aufgabe 9.1
  • Blatt 10, Datei cpp.pgm für Bildverarbeitungsprojekt
  • Blatt 11
    • Aufgabe 11.1 (Metaprogrammierung) wird um eine Woche verschoben!
    • Datei A112.zip für Aufgabe 11.2 (enthält Klasse RationaleZahl).
  • Blatt 12

  • Klausur WS 2008 / 2009 Anstelle eines 13. Übungszettels steht Ihnen eine Klausur aus dem Vorjahr zur Klausurvorbereitung zur Verfügung. Die Bearbeitung ist freiwillig. Es besteht die Möglichkeit, sie im Tutorium zu besprechen.
Software: Um Probleme mit scanf bzw. printf zu vermeiden, folgende Zeile ganz am Anfang in der main Methode einfügen:
setbuf(stdout, NULL);
Literatur: Literatur zur Vorlesung
Links:

Inhalt: Dieser C++ Kurs richtet sich an alle, die neben der Programmiersprache Java eine weitere Programmiersprache kennen lernen wollen. C++ ist die Programmiersprache der Wahl, wenn es darum geht, größere Projekte zu programmieren, bei denen die Effizienz des erzeugten Codes wichtig ist.
  • Elementare C/C++ Programme.
  • Ausdrücke, Zuweisungen
  • Anweisungen: bedingte Anweisungen; Schleifen
  • Datenstrukturen
  • Unterprogramme, Funktionen, Rekursion
  • Überladen von Funktionen; Template Funktionen
  • Modularisierung, Header Dateien
  • Klassen: Konstruktoren, Destruktoren
  • Überladen von Operatoren
  • Datei Bearbeitung
  • Klassen: Vererbung, Polymorphie
  • Template Klassen

Zuletzt geändert: Wednesday, 24-Mar-2010 16:02:24 W. Europe Standard Time