Wenn man eine Zahl eingegeben hat soll man zurück zur letzten Zahl springen können und nicht an den Anfang des Programms.
Also wenn man die 2. Zahl falsch hat das er dann zu Zahl 2 sprint.
Das gleiche auch beim Operator.
Und das er die voherigen Zahlen solange zwischenspeichert wenn etwas falsch ist.
Das macht er nur leider nicht. hmm :bahnhof:
Wie stelle ich das an, das er es macht?
Also wenn man die 2. Zahl falsch hat das er dann zu Zahl 2 sprint.
Das gleiche auch beim Operator.
Und das er die voherigen Zahlen solange zwischenspeichert wenn etwas falsch ist.
Das macht er nur leider nicht. hmm :bahnhof:
Wie stelle ich das an, das er es macht?
Java:
import static java.lang.System.out;
import java.util.Scanner;
public class test_1 {
public static void main(String[] args) {
new test_1();
Scanner s = new Scanner (System.in);
Werkzeug input= new Werkzeug();
do {
out.println("Bitte geben Sie Ihre Rechenaufgabe ein:");
out.println("="+input.calc());
out.print("Eine weitere Aufgabe rechnen? (j/n) ");
}
while(s.next().equals("j"));
}
}
Java:
import java.util.InputMismatchException;
import static java.lang.System.out;
import java.util.Scanner;
public class Werkzeug extends test_1 {
public double calc() {
try {
Scanner s = new Scanner (System.in);
double nummer1 = s.nextDouble();
String operator = s.next();
double nummer2 = s.nextDouble();
// if(nummer1==)
if(operator.equals("+")) {
return addieren(nummer1, nummer2);
}
else if(operator.equals("-")) {
return subtrahieren(nummer1, nummer2);
}
else if(operator.equals("*")) {
return multiplizieren(nummer1, nummer2);
}
else if(operator.equals("/")) {
if (nummer2== 0){
out.println("Teilen durch 0 funktioniert nicht");
}
else
{
return dividieren(nummer1, nummer2);
}
}
else
{
out.println("Hä?");
return 9;
}
}
catch(InputMismatchException e) {
out.println("Geben Sie pro Zeile nur eine Zahl bzw. einen Operator ein!\nZwischen zwei Zahlen muss ein Operator eingeben werden.");
}
return 0.0;
}
public double subtrahieren(double minuend, double subtrahend) {
return minuend - subtrahend;
}
public double addieren(double summand1, double summand2) {
return summand1 + summand2;
}
public double dividieren(double dividend, double divisor) {
return dividend / divisor;
}
public double multiplizieren(double factor1, double factor2) {
return factor1 * factor2;
}
}