Ich hab ein kleines Problem bei der Eingabe des Rechenoperators und zwar folgende Fehlermeldung:
[SPOILER]
Geben Sie die erste Zahl an mit der Sie rechnen wollen
5
Geben Sie die zweite Zahl an mit der Sie rechnen wollen
5
Welche Rechenoption wollen sie wählen?:
+
Exception in thread "main" java.util.InputMismatchException
at java.util.Scanner.throwFor(Unknown Source)
at java.util.Scanner.next(Unknown Source)
at java.util.Scanner.nextInt(Unknown Source)
at java.util.Scanner.nextInt(Unknown Source)
at Taschenrechner.main(Taschenrechner.java:18)
[/SPOILER]
und mein Code dazu:
public class Taschenrechner
{
public static void main (String args[])
{
Scanner s = new Scanner(System.in);
int Zahl1, Zahl2, Ergebnis;
char Operator;
System.out.println("Geben Sie die erste Zahl an mit der Sie rechnen wollen");
Zahl1 = s.nextInt();
System.out.println("Geben Sie die zweite Zahl an mit der Sie rechnen wollen");
Zahl2 = s.nextInt();
System.out.println("Welche Rechenoption wollen sie wählen?: ");
Operator = (char) s.nextInt();
switch(Operator)
{
case '+':
System.out.println("Ihr Ergebnis: " + addiere(Zahl1, Zahl2));
break;
case '-':
System.out.println("Ihr Ergebnis: " + subtrahiere(Zahl1, Zahl2));
break;
case '*':
System.out.println("Ihr Ergebnis: " + multipliziere(Zahl1, Zahl2));
break;
case '/':
System.out.println("Ihr Ergebnis: " + dividiere(Zahl1, Zahl2));
break;
}
}
public static int addiere(int Zahl1, int Zahl2)
{
int Zahl3 = Zahl1 + Zahl2;
return Zahl3;
}
public static int subtrahiere(int Zahl1, int Zahl2)
{
int Zahl3 = Zahl1 - Zahl2;
return Zahl3;
}
public static int multipliziere(int Zahl1, int Zahl2)
{
int Zahl3 = Zahl1 * Zahl2;
return Zahl3;
}
public static int dividiere(int Zahl1, int Zahl2)
{
int Zahl3 = Zahl1 / Zahl2;
return Zahl3;
}
}