Hallo,
folgende Hausaufgabe:
ich muss eine Methode schreiben, die einen Zähler und einen Nenner liest. Da es verboten ist, durch null zu teilen, soll das programm wieder von vorne abfragen. Das sind drei Beispiele für die Ausgaben:
Bitte Zaehler eingeben: 3
Bitte Nenner eingeben: #+
Keine Zahl eingegeben
Bitte komplette Eingabe wiederholen
Bitte Zaehler eingeben: 4
Bitte Nenner eingeben: 5
Bitte Zaehler eingeben: 2
Bitte Nenner eingeben: 0
Division durch Null ist unzulaessig
Bitte komplette Eingabe wiederholen
Bitte Zaehler eingeben: 1
Bitte Nenner eingeben: 2
Bitte Zaehler eingeben: 3
Bitte Nenner eingeben: 4
Dazu habe ich die Methode Fraction geschrieben:
Ich muss die Ausnahmne des Typs WrongInputException in der Klasse Start.java so abfangen,
dass im Fehlerfall die erneute Eingabe beider Brüche gefordert wird. Main:
Nun mein Frage: Wie schaffe ich es in der Main die Ausnahmen des Typs WrongInputException abzufangen und zu wiederholen?
folgende Hausaufgabe:
ich muss eine Methode schreiben, die einen Zähler und einen Nenner liest. Da es verboten ist, durch null zu teilen, soll das programm wieder von vorne abfragen. Das sind drei Beispiele für die Ausgaben:
Bitte Zaehler eingeben: 3
Bitte Nenner eingeben: #+
Keine Zahl eingegeben
Bitte komplette Eingabe wiederholen
Bitte Zaehler eingeben: 4
Bitte Nenner eingeben: 5
Bitte Zaehler eingeben: 2
Bitte Nenner eingeben: 0
Division durch Null ist unzulaessig
Bitte komplette Eingabe wiederholen
Bitte Zaehler eingeben: 1
Bitte Nenner eingeben: 2
Bitte Zaehler eingeben: 3
Bitte Nenner eingeben: 4
Dazu habe ich die Methode Fraction geschrieben:
Java:
static Fraction inputFraction() throws NumberFormatException, IOException, WrongInputException, BadDenominatorException{
System.out.println("Bitte Zaehler eingeben: ");
BufferedReader z = new BufferedReader(new InputStreamReader(System.in));
int i;
try{
i = Integer.parseInt( z.readLine() );
}
catch(NumberFormatException e){
throw new WrongInputException("Keine Zahl eingegeben!");
}
System.out.println("Bitte Nenner eingeben: ");
BufferedReader n = new BufferedReader(new InputStreamReader(System.in));
int x;
try{
x = Integer.parseInt( n.readLine() );
}
catch(NumberFormatException e){
throw new WrongInputException("Keine Zahl eingegeben!");
}
Fraction f = new Fraction(i, x);
return f;
}
Ich muss die Ausnahmne des Typs WrongInputException in der Klasse Start.java so abfangen,
dass im Fehlerfall die erneute Eingabe beider Brüche gefordert wird. Main:
Java:
public static void main(String[] args) throws BadDenominatorException, NumberFormatException, IOException, WrongInputException{
/*
try{
Fraction b1 = new Fraction(2, 3);
Fraction b2 = new Fraction(1, 2);
Fraction b3 = new Fraction(0, 4);
Fraction b4 = new Fraction(5, 0);
}
catch(BadDenominatorException e){
System.out.println(e.getMessage());
}
*/
try{
while(true){
Fraction b5 = Fraction.inputFraction();
Fraction b6 = Fraction.inputFraction();
}
}
catch(NumberFormatException e){
System.out.println(e.getMessage()+"Bitte komplette Eingabe wiederholen!");
}
Nun mein Frage: Wie schaffe ich es in der Main die Ausnahmen des Typs WrongInputException abzufangen und zu wiederholen?