Die Aufgabe
Aufgabe 2
Erstellen Sie ein Programm zur Berechnung der Summe, der Differenz, des Produktes und des Quotienten zweier Fließkommazahlen (double).
Es soll folgendermaßen funktionieren: Der Benutzer gibt auf der Konsole zunächst die erste Zahl ein, anschließend gibt er das Rechenzeichen (+, -, * oder /) ein, und schließlich die zweite Zahl. Dann gibt das Programm das Ergebnis der Berechnung aus.
Wird beim Eingeben einer der beiden Zahlen etwas Ungültiges eingegeben (z. B. Buchstaben oder ein Punkt anstatt eines Kommas als Dezimal-Trenner, wie es in der Konsole erforderlich ist), so wird der Benutzer darauf hingewiesen, und er kann die Zahl erneut eingeben.
Ebenso soll beim Einlesen des Rechenzeichens überprüft werden, ob es sich um eines der vier angegebenen Rechenzeichen handelt. Ansonsten wird auch hier auf die fehlerhafte Eingabe hingewiesen, und man kann das Rechenzeichen erneut eingeben.
Erstellen Sie für das Einlesen der Zahlen eine eigene Methode, in der überprüft wird, ob eine InputMismatchException geworfen wurde. Der Benutzer wird solange eine um eine erneute Eingabe gebeten, bis eine gültige Zahl eingegeben wurde.
Bei der Überprüfung der Rechenzeichen-Eingabe wird keine Exception benötigt.
Wichtig: Beachten Sie, dass Sie bei der Verwendung der Klasse Scanner nach dem Einlesen einer Zahl zunächst scanner.nextLine( ) aufgerufen werden muss, bevor man einen String einlesen kann. Am Besten machen Sie dies nach dem try-catch-Block (wenn Sie es direkt nach dem Einlesen der Zahl im Teil „try“ machen, müssen Sie es im catch-Teil auch noch einmal machen).
Testen Sie, ob Ihr Programm mit korrekten Eingaben und mit Fehleingaben richtig umgeht.
Das Programm liest eine Zahl, ein Rechenzeichen und noch eine Zahl ein und gibt das Ergebnis aus. Neu ist der Umgang mit falschen Eingaben. Tippt man bei einer Zahl abc oder 2.5 mit Punkt, bricht nextDouble mit einer Ausnahme (englisch Exception) ab. Eine Ausnahme ist eine Fehlermeldung, die Java während des Laufs auslöst. Diese Ausnahme soll das Programm abfangen und neu fragen.
try und catch kann ein Programm auf eine Ausnahme reagieren, statt abzubrechen. Das heißt Ausnahmebehandlung.- Eine Methode, die eine Zahl einliest und bei Fehlern wiederholt (try-catch).
- Eine Methode, die ein gültiges Rechenzeichen einliest (ohne Exception).
- Eine Methode, die rechnet, und main, die alles verbindet.
- Mit richtigen und falschen Eingaben testen.