Hallo allseits,
diesmal habe ich reine Ausgaben-Probleme. Die Methoden der Klasse funktionieren einwandfrei habe diese auch einzeln getestet. Also hier ist die EBNF-Beschreibung:
Der Benutzer kann n beliebige Brüche eingeben. Es wird ein Bruch eingegeben, dann kommt der Operator und zum Schluss noch ein Bruch. Das ganze kann n beliebig mal wiederholt werden.
Eine Bespiel-Eingabe für zwei Brüche wäre:
Eine Bespiel-Eingabe für drei Brüche wäre:
Ich habe es nicht so gut hinbekommen, da ich selten mit Scanner arbeite. Nicht zu vergessen ist, dass die Methoden funktionieren. Ich muss das ganze nur noch ausgeben, denen ein Eingabesyntax vorgeschrieben wird. Ich freue mich schon auf die Rückmeldungen.
EDİT:
Die Brüche werden in einem Objekt der Klasse Rational gespeichert:
Mathematische Funktionen werden wie folgt aufgerufen:
diesmal habe ich reine Ausgaben-Probleme. Die Methoden der Klasse funktionieren einwandfrei habe diese auch einzeln getestet. Also hier ist die EBNF-Beschreibung:
Java:
<Eingabe> ::= <Bruch>{<Operator><Bruch>} .
<Bruch> ::= <Zahl><Zahl>
<Zahl> ::= ganze Zahl in Dezimaldarstellung
<Operator> ::= +|-|*|/
Der Benutzer kann n beliebige Brüche eingeben. Es wird ein Bruch eingegeben, dann kommt der Operator und zum Schluss noch ein Bruch. Das ganze kann n beliebig mal wiederholt werden.
Eine Bespiel-Eingabe für zwei Brüche wäre:
Java:
1 2 --> Bruch 1
+ --> Operator
2 4 --> Bruch 2
1/1 --> Ergebnis
Eine Bespiel-Eingabe für drei Brüche wäre:
Java:
1 2 --> Bruch 1
+ --> Operator
2 4 --> Bruch 2
- --> Operator
4 −3 --> Bruch 3
7/3 --> Ergebnis
Ich habe es nicht so gut hinbekommen, da ich selten mit Scanner arbeite. Nicht zu vergessen ist, dass die Methoden funktionieren. Ich muss das ganze nur noch ausgeben, denen ein Eingabesyntax vorgeschrieben wird. Ich freue mich schon auf die Rückmeldungen.
EDİT:
Die Brüche werden in einem Objekt der Klasse Rational gespeichert:
Java:
Rational bruch = new Rational(zaehler, nenner);
Mathematische Funktionen werden wie folgt aufgerufen:
Java:
bruch.add(bruch2);
bruch.sub(bruch2);
bruch.mul(bruch2);
bruch.div(bruch2);