Wie schon oben genannt gibt mein "einfacher" Taschenrechner nur 0 aus
Java:
import java.util.*;
public class Taschenrechner {
private double Ergebnis;
private double Operator1;
private double Operator2;
private Scanner scanner;
public Taschenrechner()
{
scanner = new Scanner(System.in);
do{
System.out.println("bitte geben sie ihre rechenaufgabe ein");
System.out.println("="+this.berechne());
System.out.println("eine weitere Aufgabe ? Drücke `j` ");
}
while (scanner.next().equals("j"));
}
public double berechne(){
try {
double Operator1 =scanner.nextDouble();
String operator =scanner.next();
double Operator2 =scanner.nextDouble();
if (scanner.equals("+")) {
return Addiere(Operator1,Operator2);
} // end of if
else if (scanner.equals("-")) {
return Subtraktion(Operator1,Operator2);
} // end of if
else if (scanner.equals("/")) {
return Division(Operator1,Operator2);
} // end of if
else if (scanner.equals("*")) {
return Multiplikation(Operator1,Operator2);
} // end of if
}
catch(InputMismatchException e ){
System.out.println("Geben sie nur eine Zahl an AMK");
System.exit(1);
}
return berechne() ; // Ich weiss, dass der Fehler daran liegt.
}
public double Addiere(double Operator1,double Operator2)
{
Ergebnis = Operator1 + Operator2;
return Ergebnis;
}
public double Subtraktion(double Operator1,double Operator2)
{
Ergebnis = Operator1 - Operator2;
return Ergebnis;
}
public double Multiplikation(double Operator1,double Operator2)
{
Ergebnis = Operator1 * Operator2;
return Ergebnis;
}
public double Division(double Operator1,double Operator2)
{
if (Operator2 == '0') {
System.out.println(" Teilen durch 0 nicht möglich");
}
else {
Ergebnis = Operator1 / Operator2;
return Ergebnis;
}
return Ergebnis; }
public static void main(String[] args)
{
Taschenrechner te = new Taschenrechner();
}
}