TU BRAUNSCHWEIG

Institut für Programmierung und Reaktive Systeme

Programmieren I (WS 2017/2018) und Programmieren II (SS 2018)

Programmieren I
Wintersemester 2016/17
Bachelor, 6 LP

Programmieren II
Sommersemester 2017
Bachelor, 6 LP

Art der Veranstaltung: Vorlesung mit Übung und Rechnerübung

Programmieren I: 2+2 (und Rechnerübung)

Programmieren II: 2+2 (und Rechnerübung)

Veranstalter: Institut für Programmierung und Reaktive Systeme

Dozent: Dr. W. Struckmann

Prüfungsmodalitäten:  Bearbeitung von Hausaufgaben und Klausur. Abhängig vom Studiengang sind die Hausaufgaben entweder eine Studienleistung oder eine Prüfungsvorleistung. In fast allen Studiengängen sind die Hausaufgaben eine Studienleistung.

Qualifikationsziele:  In der Veranstaltung werden die Grundlagen der imperativen und objektorientierten Programmierung anhand der Beispielsprache Java vermittelt. Die Studierenden sind nach Abschluss der Module »Programmieren I« und »Programmieren II« in der Lage kleine und mittelgroße Programme in Java zu schreiben.

Inhalt der Veranstaltung:  In der Vorlesung »Programmieren I« werden die Grundlagen der imperativen und objektorientierten Programmierung anhand der Programmiersprache »Java« besprochen und in der Übung, in der die Teilnehmer kleine Programme selbstständig entwickeln sollen, angewendet. Der zweite Teil der Veranstaltung erweitert und vertieft die im ersten Semester erworbenen Kenntnisse. In den Übungen werden Datenstrukturen wie Listen, Bäume und Graphen sowie Such- und Sortierverfahren programmiert. Darüber hinaus werden die Grundlagen der Parallel- und der Grafikprogrammierung behandelt.

Ergänzung:  Außer dem imperativen und dem objektorientierten Paradigma zur Formulierung von Algorithmen gibt es weitere. In der Bachelor-Veranstaltung »Programmieren für Fortgeschrittene« können Sie die funktionale Sprache »Haskell« erlernen. In der Master-Veranstaltung »Logik in der Informatik« bieten wir Ihnen die logische Sprache »Prolog« an.

Letzte Änderung:  6. September 2017

Aktuell

    Klausur Programmieren 2

  • Wie am Anfang des Sommersemesters angekündigt, hat die Klausur Programmieren II am Freitag, den 18. August 2017 von 14:30 - 16:30 Uhr stattgefunden.

  • Aus Datenschutzgründen haben Sie die Note Ihrer Klausur nur unter der Kennziffer Ihrer Klausur erfahren.

  • Wie mitgeteilt hat die Klausureinsicht am Freitag, den 1. September von 10:00 bis 13:00 Uhr im Informatikzentrum im Raum 251 stattgefunden.

  • Klausur Programmieren 1

  • Wie am Anfang des Sommersemesters angekündigt, hat die Klausur Programmieren I am Montag, den 28. August 2017 von 8:00 - 10:00 Uhr stattgefunden.

  • Aus Datenschutzgründen haben Sie die Note Ihrer Klausur nur unter der Kennziffer Ihrer Klausur erfahren.

  • Wie mitgeteilt hat die Klausureinsicht am Mittwoch, den 6. September von 10:00 bis 13:00 Uhr im Informatikzentrum im Raum 251 stattgefunden.

Vorlesung

  • Vorbemerkungen (pdf, ps.gz, 24.10.)
  • 1. Algorithmus und Programm (pdf, ps.gz, 31.10.)
  • 2. Erste Schritte in Java (pdf, ps.gz, 07.11.)
  • 3. Java: Grundlagen der Sprache (pdf, ps.gz, 05.12.)
  • 4. Objektorientierte Programmierung in Java (pdf, ps.gz, 15.01.)
  • 5. Rekursion/Funktionale Programmierung (pdf, ps.gz, 29.01.)
  • 6. Zuverlässigkeit von Programmen (pdf, ps.gz, 29.01.)
  • 7. Klassen und Methoden zur Ein- und Ausgabe (pdf, ps.gz, 10.02.)
  • Rückblick und Ausblick (pdf, ps.gz, 04.04.)
  • 8. Weiterführende Sprachkonzepte von Java (pdf, ps.gz, 17.04.)
  • 9. Java und Datenstrukturen (pdf, ps.gz, 15.05.)
  • 10. Grafikprogrammierung in Java (pdf, ps.gz, 11.06.)
  • 11. Parallelprogrammierung in Java (pdf, ps.gz, 02.07.)
  • 12. Ausblick (pdf, ps.gz, 02.07.)
  • Schlussbemerkungen (pdf, ps.gz, 14.07.)

Übung

  • 1. Übungsblatt (pdf, 24.10.)
  • 2. Übungsblatt (pdf, 31.10.)
  • 3. Übungsblatt (pdf, 07.11.)
  • 4. Übungsblatt (pdf, 21.11.)
  • 5. Übungsblatt (pdf, 06.12.)
  • 6. Übungsblatt (pdf, 09.01.)
  • 7. Übungsblatt (pdf, 23.01.)
  • 8. Übungsblatt (pdf, 07.04.)
  • 9. Übungsblatt (pdf, 21.04.)
  • 10. Übungsblatt (pdf, 25.04.)
  • Lib.jar (jar, 25.04.)
  • 11. Übungsblatt (pdf, 09.05.)
  • Lib2.jar (jar, 09.05.)
  • 12. Übungsblatt (pdf, 23.05.)
  • Lib3.jar (jar, 23.05.)
  • 13. Übungsblatt (pdf, 13.06.)
  • 14. Übungsblatt (pdf, 27.06.)
  • Regelseite für Hausaufgaben(pdf, 07.11.)
  • Richtlinien zur Formatierung von Java-Programmen (pdf, 07.11.)
    Halten Sie sich bei der Programmierung an die vorgestellten Richtlinien zur Formatierung von Java-Programmen. Dateien zu Ihrem Syntax-Ceck finden Sie bei StudIP.
  • Lösungen der Übungsaufgaben (tar.gz, 14.07.)

Materialien

  • Überblick über die Veranstaltung (pdf, 14.07.)
  • Übersicht »Sprachen der Informatik« (pdf, 24.10.)
  • Symbole zur Größenordnung von Funktionen (pdf, 31.10.)
  • Algorithmen und Programme (pdf, 07.11.)
  • Java-Operatoren (pdf, 14.11.)
  • Fallstudien (tar.gz, 19.05.)

Klausuren

  • Übungsklausur »Programmieren I« (pdf, 02.02.)
  • Klausur »Programmieren I« (pdf, 13.03.)
  • Übungsklausur »Programmieren II« (pdf, 07.07.)
  • Klausur »Programmieren II« (pdf, 18.08.)
  • Klausur »Programmieren I« (pdf, 28.08.)

Literatur (wird evtl. aktualisiert werden)

Java

Termine

  • Programmieren I (Wintersemester 2016/2017)

    • Vorläufiger Zeitplan für das Wintersemester 2016/2017 (pdf, 24.10.)
    • Die Vorlesungszeit beginnt am 17. Oktober 2016.
    • Zeiten von Vorlesung, Übung und Sprechstunde:

      Vorlesung: Mo., 15:00-16:30 UhrPK 15.1
      Übung: Do., 08:00-09:30 UhrPK 15.1
      Sprechstunde:Mi., 10:30-11:30 UhrIZ, Raum 244

    • Zeiten der Rechnerübungen:

      Gruppe Raum Betreuer Uhrzeit
      1b IZ 359 Lennart Almstedt Dienstag 16:45 - 18:15 Uhr
      1c IZ 251 Lennart Almstedt Donnerstag 11:30 - 13:00 Uhr
      2a IZ 251 Paul Breuker Mittwoch 15:00 - 16:30 Uhr
      2b IZ 251 Paul Breuker Freitag 15:00 - 16:30 Uhr
      2c IZ 251 Paul Breuker Freitag 16:45 - 18:15 Uhr
      3a IZ 251 Jakob Garbe Freitag 9:45 - 11:15 Uhr
      3b IZ 251 Jakob Garbe Freitag 11:30 - 13:00 Uhr
      4a IZ 359 Thole Goesmann Mittwoch 15:00 - 16:30 Uhr
      4b IZ 359 Thole Goesmann Mittwoch 16:45 - 18:15 Uhr
      4c IZ 251 Thole Goesmann Donnerstag 9:45 - 11:15 Uhr
      5a IZ G40 Timo Günther Mittwoch 15:00 - 16:30 Uhr
      5b PK 4.8 Timo Günther Donnerstag 13:15 - 14:45 Uhr
      6a IZ 359 Martin Lagemann Mittwoch 8:00 - 9:30 Uhr
      6b IZ 359 Martin Lagemann Mittwoch 9:45 - 11:15 Uhr
      6c IZ 359 Martin Lagemann Mittwoch 13:15 - 14:45 Uhr
      7a IZ 359 Stephan Mielke Donnerstag 13:15 - 14:45 Uhr
      7b IZ 359 Stephan Mielke Donnerstag 15:00 - 16:30 Uhr
      8a PK 4.8 Jevgeny Nabotnikow Montag 16:45 - 18:15 Uhr
      8b PK 4.8 Jevgeny Nabotnikow Donnerstag 16:45 - 18:15 Uhr
      8c IZ G40 Jevgeny Nabotnikow Freitag 15:00 - 16:30 Uhr
      9a IZ 359 Nicole Naczk Montag 8:00 - 9:30 Uhr
      9b PK 4.8 Nicole Naczk Mittwoch 8:00 - 9:30 Uhr
      10a IZ 359 Marvin Priedigkeit Dienstag 13:15 - 14:45 Uhr
      10b IZ 359 Marvin Priedigkeit Dienstag 15:00 - 16:30 Uhr
      11a PK 4.8 Tim Schubert Mittwoch 9:45 - 11:15 Uhr
      12a IZ G40 Maximilian von Unwerth Dienstag 13:15 - 14:45 Uhr
      12b IZ 359 Maximilian von Unwerth Mittwoch 11:30 - 13:00 Uhr
      12c IZ 359 Maximilian von Unwerth Freitag 8:00 - 9:30 Uhr
      12d IZ 251 Maximilian von Unwerth Freitag 13:15 - 14:45 Uhr
      13a PK 4.8 Daniel Wolfram Montag 8:00 - 9:30 Uhr
      13b PK 4.8 Daniel Wolfram Montag 9:45 - 11:15 Uhr
      14a IZ 251 Colin Wulf Freitag 8:00 - 9:30 Uhr
      14c PK 4.8 Colin Wulf Freitag 16:45-18:15 Uhr

    • Die Rechnerübungen beginnen in der dritten Semesterwoche.

  • Programmieren II (Sommersemester 2017)

    • Vorläufiger Zeitplan für das Sommersemester 2017 (pdf, 09.04.)
    • Die Vorlesungszeit beginnt am 4. April 2017.
    • Zeiten von Vorlesung, Übung und Sprechstunde:

      Vorlesung: Di., 08:00-09:30 UhrSN 19.1
      Übung: Fr., 11:30-13:00 UhrSN 19.1
      Sprechstunde:Mi., 10:30-11:30 UhrIZ, Raum 244

    • Zeiten der Rechnerübungen:

      Gruppe Betreuer Raum Uhrzeit
      1A Lennart Almstedt IZ 359 Dienstag 16:45 - 18:15
      1B Lennart Almstedt IZ 359 Mittwoch 15:00 - 16:30
      1C Lennart Almstedt IZ 359 Mittwoch 16:45 - 18:15
      2A Paul Breuker IZ 251 (Laptop) Mittwoch 15:00 - 16:30
      2B Paul Breuker IZ 251 (Laptop) Mittwoch 16:45 - 18:15
      2C Paul Breuker IZ 261 Donnerstag 13:15 - 14:45
      2D Paul Breuker IZ 251 (Laptop) Donnerstag 16:45 - 18:15
      3A Thole Goesmann IZ 261 Montag 15:00 - 16:30
      3B Thole Goesmann IZ 261 Montag 16:45 - 18:15
      3C Thole Goesmann IZ 261 Mittwoch 15:00 - 16:30
      4A Martin Lagemann IZ 359 Dienstag 13:15 - 14:45
      4B Martin Lagemann IZ 359 Dienstag 15:00 - 16:30
      4C Martin Lagemann IZ 359 Mittwoch 13:15 - 14:45
      5A Stephan Mielke IZ 261 Freitag 13:15 - 14:45
      5B Stephan Mielke IZ 261 Freitag 15:00 - 16:30
      6C Jevgeny Nabotnikow IZ G40 Donnerstag 16:45 - 18:15
      7A Nicole Naczk IZ 261 Mittwoch 08:00 - 09:30
      8A Marvin Priedigkeit IZ 359 Donnerstag 15:00 - 16:30
      8B Marvin Priedigkeit IZ 359 Donnerstag 16:45 - 18:15
      9A Tim Schubert IZ G40 Montag 08:00 - 09:30
      9B Tim Schubert IZ G40 Montag 09:45 - 11:15
      9C Tim Schubert IZ G40 Montag 13:15 - 14:45
      10A Maximilian von Unwerth IZ 251 (Laptop) Montag 15:00 - 16:30
      11A Colin Wulf IZ 359 Freitag 13:15 - 14:45
      11B Colin Wulf IZ 359 Freitag 15:00 - 16:30

    • Bei StudIP können Sie sich zu den Rechnerübungen anmelden..
    • Die Rechnerübungen beginnen in der zweiten Semesterwoche.

  • Klausurtermine

    • Wintersemester 2016/2017

       Klausur   Programmieren I    Mo., 13. März 2017   08:30 - 10:30 Uhr  
       Klausur   Programmieren II    Do., 30. März 2017   08:30 - 10:30 Uhr  

    • Sommersemester 2017

       Klausur   Programmieren I    Mo., 28. August 2017   08:00 - 10:00 Uhr  
       Klausur   Programmieren II    Fr., 18. August 2017   14:30 - 16:30 Uhr  


  aktualisiert am 02.08.2016
TU_Icon_E_Mail_1_17x17_RGB Zum Seitenanfang