TU BRAUNSCHWEIG

Institut für Programmierung und Reaktive Systeme

Programmieren I (SS 2016) und Programmieren II (WS 2016/17)

Programmieren I
Sommersemester 2016
Bachelor, 6 LP

Programmieren II
Wintersemester 2016/17
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: 11. April 2017

Vorlesung

  • Vorbemerkungen (pdf, ps.gz, 04.04.)
  • 1. Algorithmus und Programm (pdf, ps.gz, 04.04.)
  • 2. Erste Schritte in Java (pdf, ps.gz, 11.04.)
  • 3. Java: Grundlagen der Sprache (pdf, ps.gz, 18.04.)
  • 4. Objektorientierte Programmierung in Java (pdf, ps.gz, 05.06.)
  • 5. Rekursion/Funktionale Programmierung (pdf, ps.gz, 12.06.)
  • 6. Zuverlässigkeit von Programmen (pdf, ps.gz, 03.07.)
  • 7. Klassen und Methoden zur Ein- und Ausgabe (pdf, ps.gz, 10.07.)
  • Rückblick und Ausblick (pdf, ps.gz, 12.07.)
  • 8. Weiterführende Sprachkonzepte von Java (pdf, ps.gz, 31.10.)
  • 9. Java und Datenstrukturen (pdf, ps.gz, 16.12.)
  • 10. Grafikprogrammierung in Java (pdf, ps.gz, 15.01.)
  • 11. Parallelprogrammierung in Java (pdf, ps.gz, 29.01.)

Übung

  • 1. Übungsblatt (pdf, 07.04.)
  • 2. Übungsblatt (pdf, 14.04.)
  • 3. Übungsblatt (pdf, 28.04.)
  • 4. Übungsblatt (pdf, 12.05.)
  • 5. Übungsblatt (pdf, 02.06.)
  • IntSet.java (java, 02.06.)
  • 6. Übungsblatt (pdf, 16.06.)
  • 7. Übungsblatt (pdf, 30.06.)
  • 8. Übungsblatt (pdf, 24.10.)
  • 9. Übungsblatt (pdf, 31.10.)
  • 10. Übungsblatt (pdf, 07.11.)
  • ListAlt.java (java, 07.11.)
  • languages.csv (csv, 07.11.)
  • 11. Übungsblatt (pdf, 21.11.)
  • List.java (java, 21.11.)
  • breeds.csv (csv, 21.11.)
  • 12. Übungsblatt (pdf, 06.12.)
  • 13. Übungsblatt (pdf, 09.01.)
  • 14. Übungsblatt (pdf, 23.01.)
  • Regelseite für Hausaufgaben (pdf, 07.11.)
  • Richtlinien zur Formatierung von Java-Programmen (pdf, 28.04.)
    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, 10.02.)

Materialien

  • Überblick über die Veranstaltung (pdf, 10.02.)
  • Algorithmen und Programme (pdf, 11.04.)
  • Symbole zur Größenordnung von Funktionen (pdf, 11.04.)
  • Java-Operatoren (pdf, 24.04.)
  • Zur Komplexität rekursiver Algorithmen (pdf, 12.06.)
  • Fallstudien (tar.gz, 02.12.)

Klausuren

  • Übungsklausur »Programmieren I« (pdf, 07.07.)
  • Klausur »Programmieren I« (pdf, 29.08.)
  • Übungsklausur »Programmieren II« (pdf, 03.02.)
  • Klausur »Programmieren II« (pdf, 30.03.)

Literatur (wurde im Wintersemester 2016/2017 aktualisiert)

Java

Termine

  • Programmieren I (Sommersemester 2016)

    • Vorläufiger Zeitplan für das Sommersemester 2016 (pdf, 07.04.)
    • Die Veranstaltung beginnt am Montag, den 04. April 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
      1a IZ 251 Paul Breuker Montag 16:45 - 18:15
      1b IZ 251 Paul Breuker Donnerstag 9:45 - 11:15
      2a IZ 251 Jakob Garbe Mittwoch 9:45 - 11:15
      2b IZ 251 Jakob Garbe Mittwoch 11:30 - 13:00
      3a IZ 359 Thole Goesmann Mittwoch 13:15 - 14:45
      3b IZ 359 Thole Goesmann Mittwoch 15:00 - 16:30
      4a IZ 359 Timo Günther Freitag 13:15 - 14:45
      4b IZ 359 Timo Günther Freitag 15:00 - 16:30
      5a IZ G40 David Hellmers Dienstag 9:45 - 11:15
      5b IZ G40 David Hellmers Donnerstag 16:45 - 18:15
      6a PK 4.8 Norman Hupfeld Mittwoch 13:15 - 14:45
      6b PK 4.8 Norman Hupfeld Mittwoch 15:00 - 16:30
      7a HS 65.4 Martin Lagemann Donnerstag 11:30 - 13:00
      7b IZ 359 Martin Lagemann Donnerstag 15:00 - 16:30
      7c HS 65.4 Martin Lagemann Freitag 8:00 - 9:30
      8a IZ 251 Stephan Mielke Dienstag 13:15 - 14:45
      8b IZ 251 Stephan Mielke Dienstag 15:00 - 16:30
      9a PK 4.8 Jevgeny Nabitnikow Mittwoch 16:45 - 18:15
      9b PK 4.8 Jevgeny Nabitnikow Freitag 15:00 - 16:30
      9c PK 4.8 Jevgeny Nabitnikow Freitag 16:45 - 18:15
      10a IZ G40 Nicole Naczk Montag 8:00 - 9:30
      10b IZ G40 Nicole Naczk Montag 9:45 - 11:15
      10c IZ G40 Nicole Naczk Dienstag 15:00 - 16:30
      11a IZ 359 Ilonka Pingel Montag 8:00 - 9:30
      11b IZ 359 Ilonka Pingel Montag 9:45 - 11:15
      11c IZ 359 Ilonka Pingel Dienstag 9:45 - 11:15
      11d IZ 359 Ilonka Pingel Dienstag 13:15 - 14:45
      11e IZ 359 Ilonka Pingel Dienstag 15:00 - 16:30
      12a HS 65.4 Marvin Priedigkeit Donnerstag 13:15 - 14:45
      12b HS 65.4 Marvin Priedigkeit Donnerstag 15:00 - 16:30
      12c HS 65.4 Marvin Priedigkeit Donnerstag 16:45 - 18:15
      13a HS 65.4 Tim Schubert Mittwoch 13:15 - 14:45
      13b HS 65.4 Tim Schubert Mittwoch 15:00 - 16:30

    • Die Rechnerübungen beginnen in der zweiten Semesterwoche.

  • Programmieren II (Wintersemester 2016/2017)

    • Vorläufiger Zeitplan für das Wintersemester 2016/2017 (pdf, 24.10.)
    • Die Vorlesungszeit beginnt am 17. Oktober 2016.
      Wegen einer Ausfallempfehlung findet die Vorlesung am 18. Oktober 2016 aber nicht statt.
    • 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 Raum Betreuer Uhrzeit
      1a IZ 359 Lennart Almstedt Montag 15:00-16:30 Uhr
      11b PK 4.8 Tim Schubert Mittwoch 13:15-14:45 Uhr
      11c PK 4.8 Tim Schubert Mittwoch 15:00-16:30 Uhr
      14b PK 4.8 Colin Wulf Freitag 15:00-16:30 Uhr

    • Die Rechnerübungen beginnen in der dritten Semesterwoche.

  • Klausurtermine

    • Sommersemester 2016

       Klausur   Programmieren I    Mo., 29. August 2016   12:00 - 14:00 Uhr  
       Klausur   Programmieren II    Fr., 19. August 2016   08:30 - 10:30 Uhr  

    • 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  


  aktualisiert am 02.08.2016
TU_Icon_E_Mail_1_17x17_RGB Zum Seitenanfang