Hallo, Habe einen Taschenrechner gerschrieben und jetzt gibt es folgende Aufgabe :
Vorweg: mit unären Operatoren sind c oder e gemeint. mit c setzt man den Taschenrechner auf 0 zurück und mit e beendet man das Programm.
Bei Eingabe eines zweiten Operanden bei einem unären Operator soll eine selbstdefinierte InvalidOperationException mit entsprechender Fehlermeldung ausgelöst und das Programm mit dem letzten korrekten Wert fortgesetzt werden. Die Fehlermeldung soll im Exception-Handler ausgegeben werden
Mein Taschenrechner funktioniert mit folgendem Switch- Case- Rahmen:
Ich weiß, dass ich bei case c und case e etwas einbauen muss. Wie muss man es in Java ausdrücken, dass wenn ein c oder e eingegeben wird und darauf eine Zahl, eine Fehlermeldung ausgegeben wird?
Vorweg: mit unären Operatoren sind c oder e gemeint. mit c setzt man den Taschenrechner auf 0 zurück und mit e beendet man das Programm.
Bei Eingabe eines zweiten Operanden bei einem unären Operator soll eine selbstdefinierte InvalidOperationException mit entsprechender Fehlermeldung ausgelöst und das Programm mit dem letzten korrekten Wert fortgesetzt werden. Die Fehlermeldung soll im Exception-Handler ausgegeben werden
Mein Taschenrechner funktioniert mit folgendem Switch- Case- Rahmen:
Java:
try {
switch (operator) {
case '+':
operand = newScanner.nextInt();
ergebnis = ergebnis + operand;
break;
case '-':
operand = newScanner.nextInt();
ergebnis = ergebnis - operand;
break;
case '/':
operand = newScanner.nextInt();
if (operand == 0){
throw new DivideByZeroException();
}
ergebnis = ergebnis / operand;
break;
case 'c':
ergebnis = 0;
break;
case 'e':
nochMal = false;
break;
default:
throw new InvalidOperatorException();
}
}
catch(InvalidOperatorException e){
System.out.println("Unbekannter Operator");
}
catch (InputMismatchException e) {
System.out.println("kein int!!!");
} catch (DivideByZeroException e) {
System.out.println("div 0");
}
Ich weiß, dass ich bei case c und case e etwas einbauen muss. Wie muss man es in Java ausdrücken, dass wenn ein c oder e eingegeben wird und darauf eine Zahl, eine Fehlermeldung ausgegeben wird?
Zuletzt bearbeitet von einem Moderator: