• Keine Ergebnisse gefunden

Programmier-Klausur Programmieren 2 – PZR 2 (30.9.2019)

N/A
N/A
Protected

Academic year: 2022

Aktie "Programmier-Klausur Programmieren 2 – PZR 2 (30.9.2019)"

Copied!
1
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Programmier-Klausur

Programmieren 2 – PZR 2 (30.9.2019)

Erlaubte Hilfsmittel:

Rechner (auch der eigene)

IDE (IntelliJ, Netbeans, Eclipse)

Dokumentationen Java (auch die Online-Javadoc von Oracle)

Nur bei der Abgabe: Webbrowser um die Lösungen in Moodle einzustellen Ablauf:

Dauer: 90 Minuten

1. Lesen Sie die Aufgabe aufmerksam!

2. Implementieren Sie die Aufgabe!

3. Laden Sie die Lösung auf Moodle hoch.

Fragen? Fragen Sie so, dass alle die Frage und die Antwort hören können.

Aufgabe:

Sie sollen ein Programm schreiben, dass eine Einkaufsliste realisiert. Es folgt ein Beispiel.

Zeilen, die mit „>“ beginnen sollen die Eingabe andeuten. Zeilen ohne das Symbol sind die Ausgaben.

Bsp.:

> Äpfel 1 Gesamt: 1

> Äpfel 1

Exception: doppelte Eingabe Gesamt: 1

> Birnen 2 Gesamt: 3

> remove Äpfel Gesamt: 2

> Tesla 86800 Gesamt: 86802

> print Birnen 2 Tesla 86800

Es gibt zwei Kommandos: remove und print.

Remove hat einen Parameter: den Namen des zu löschenden Elements.

Die Eingabe bewirkt, dass das Element mit dem Namen gelöscht wird. Gibt es das Element nicht, passiert nichts.

Print gibt die Einkaufsliste aus

Beginnt die Zeile nicht mit einem Kommando, so wird es als neuer Eintrag interpretiert.

Ein neuer Eintrag besteht aus dem Element (z.B. „Äpfel“) und einem Preis. Wir arbeiten ohne Kommastellen im Preis.

Ein Element kann nur einmal in der Liste existieren. Ein doppelter Eintrag wird zurückgewiesen, siehe Beispiel. In jedem Fall wird der aktuelle Gesamtpreis des Einkaufes ausgegeben.

Die Liste ist persistent im Filesystem zu speichern.

Das Programm soll jederzeit beendet werden können. Nach dem Neustart soll die Liste im vorherigen Zustand vorhanden sein.

Arbeiten Sie test-getrieben:

Schreiben Sie zuerst Tests, die die Funktionsfähigkeit Ihres Programms beweisen – und zwar alle Aspekte: Gute Fälle, schlechte Fälle, Randfälle, die Persistierung, Fehleingaben und was Ihnen noch einfällt.

Implementieren Sie danach. Nutzen Sie sich die Regeln guten Codes für Java-Programme, die Prinzipien dont-repeat-yourself, make-it-explicit, program-to-interface und alles, was wir über gutes Programmieren im Kurs diskutierten.

Referenzen

ÄHNLICHE DOKUMENTE

Geben Sie dieser Klasse einen geeigneten Namen und überlegen Sie sich geeignete Methoden.. Beachten Sie die diskutierten Regeln

Implementieren Sie einen endlichen deterministischen Automaten. Ein solcher Automat startet in einem Startzustand. Dann kann man ihm Zeichen übergeben. Wir nehmen einen String

Implementieren Sie einen endlichen deterministischen Automaten. Ein solcher Automat startet in einem Startzustand. Dann kann man ihm Zeichen übergeben. Wir nehmen einen String

Er soll über einen Speicher verfügen, in dem das Ergebnis der letzten Operation gespeichert wird.. Dieser Speicher wird mit 0

Der Automat soll nach dem Lesen der gesamten Eingabe ein Symbol für Ja / Nein zurück geben – es bietet sich ein boolean-Wert an.. Er teilt so mit, ob die gelesenen Zeichen einen

• Man kann eine Zahl zum aktuellen Speicher addieren (unäre Operation).. • Der Speicher kann in einem File persistent gemacht

Diese Klassen soll außerdem in der Lage sein, Werte aus einem File zu lesen und und anhand der Werte Asset-Objekte zu erzeugen.. Überlegen Sie, ob sich auch bei der

A systematic procedure is developed to allow rapid identification of design parameters without the need for lengthy numerical simulation, using the lumped element, stiffness matrix