Programmiertechnik 1 - AIN/1
Sommersemester 2026


Übungsaufgabe 3: Notenstatistik

  1. Vorbereitung

    Nach dem Download und dem Entpacken von Aufgabe3.jar sind in Ihrem Arbeitsverzeichnis prog1-uebungen\ neben dieser Aufgabenstellung Aufgabe3.html noch sechs .txt-Dateien für das automatische Testen und ein Paketverzeichnis aufgabe3\ hinzugekommen:
    aufgabe3-*.txtDateien mit Testeingaben und Sollausgaben
    aufgabe3\package-info.javaPaketdokumentation
    aufgabe3\Notenstatistik.javazu vervollständigendes Java-Programm

    Öffnen Sie ein Terminal im Arbeitsverzeichnis prog1-uebungen\ und erweitern Sie Ihre HTML-Dokumentation um das Paket aufgabe3 mit dem Kommando

      ant doc

    Öffnen Sie die erzeugte Paketdokumentation doc/aufgabe3/package-summary.html im Browser. Die Paketdokumentation enthält die Spezifikation des zu erstellenden Programms.

    Außerdem sollte immer die Webseite der Lehrveranstaltung https://www-home.htwg-konstanz.de/~drachen/prog1/prog1.html im Browser geöffnet sein. Dort finden Sie die erwähnten Beispielprogramme und die benötigten Vorlesungsfolien.

    Nutzen Sie auch die Dokumentation der Java-Bibliothek https://docs.oracle.com/en/java/javase/21/docs/api/java.base/module-summary.html zum Nachschlagen.

    Als Voraussetzung für das Bearbeiten dieser Aufgabe sollten Sie die Vorlesungsunterlagen bis mindestens Seite 3-20 nachbereitet und die zugehörigen Programmbeispiele nachvollzogen haben, insbesondere Verzweigung.java, Fallunterscheidung.java

  2. Programmierung

    Das Programm aufgabe3\Notenstatistik.java ist noch unvollständig. Sie sollen den fehlenden Programmtext an den mit TODO: markierten Stellen ergänzen:

    Ersetzen Sie nach getaner Arbeit die TODO:-Markierungen in den Zeilenkommentaren durch DONE:. Sie dürfen die TODO:-Zeilenkommentare nicht löschen. Die Kommentare sollen als Gliederung des Programms erhalten bleiben.

    Ihre Lösung darf nur Java-Sprachmittel und Java-Bibliotheksklassen enthalten, die bereits in der Vorlesung besprochen wurden oder die in dieser Aufgabenstellung explizit vorgeschlagen sind.

    Haben Sie sowohl if-else- als auch switch-case-Anweisungen verwendet?
    Haben alle Variablen den kleinst möglichen Scope?

  3. Test und Qualitätssicherung

    Sie sind erst fertig, wenn das Programm funktioniert, diff keine Unterschiede zwischen Soll-Ausgabe und Ihrer Ausgabe mehr findet sowie die Werkzeuge checkstyle und spotbugs keine Fehler mehr melden!

  4. Abgabe

    Den spätesten Abgabetermin finden Sie auf der Webseite der Lehrveranstaltung https://www-home.htwg-konstanz.de/~drachen/prog1/prog1.html.

    Führen Sie einen Test mit manueller Eingabe vor, insbesondere mit falschen Eingaben.
    Führen Sie die Tests mit automatischer Eingabe aus Schritt 3 vor.
    Zeigen Sie das ausgefüllte Teilnahmeprotokoll.

Ergänzende Übungen für Schnellprogrammierer
freiwillig, pro Spiegelpunkt 1 Bonuspunkt

Ändern Sie für die Bonusaufgaben nicht Ihr Pflichtprogramm, sondern legen Sie die Bonusprogramme in einem neuen Unterordner aufgabe3\bonus\ ab. In den Bonusprogrammen müssen Sie dann die Paketzuordnung package aufgabe3.bonus; angeben. Beim ant-Aufruf geben Sie entsprechend -Dpackage=aufgabe3/bonus an.



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