kleiner Taschenrechner mit switch fehlerhaft

diehigh

Mitglied
Wir sollte so etwas wie einen kleinen Taschenrechner programmieren, bloß funktioniert die ausgabe igendwie nicht. Es erscheint meistens die Zahl 0 (oder sehr kleine zahlen). Ich habe die vermutung, dass ich den wert durch alle operationen durchlaufen lasse, blicke aber noch nicht ganz durch. Zuvor habe ich schon einen mit If-Else geschrieben und der funktioniert.

Java:
import Prog1Tools.IOTools;


public class TaschenrechnerMitSwitchCase {
	public static void main(String[]args){
		System.out.println("Willkommen im Taschenrechner!");				
		int x = IOTools.readInt("Den ersten Operanden eingeben: ");
		int y = IOTools.readInt("Den zweiten Operanden eingeben: ");
		char op = IOTools.readChar("Den Operator eingeben!(+, -, *, / oder %): ");
		int ergebnis = 0;
		
		if (op == '+' || op == '-' || op == '*' || op == '/' || op == '%' ){
			switch (op){
			case '*': ergebnis= x*y;
			case '+': ergebnis= x+y;
			case '-': ergebnis= x-y;
			case '/': ergebnis= x/y;
			case '%': ergebnis= x%y;			
			}
			System.out.println(ergebnis);	
		}
		else System.out.println("Bitte einen der angegebenen Operatoren auswählen! ");
	}
			
}
 
Also die Switch ist falsch ^^

Switch (wert)

case WERT
break;

case Wert
break;

default
break;

Switch-Tutorial

Du kannst die if Anweisung für +,- ... löschen, weil der Switch den Wert ja schon überprüft. Wenn du jetzt noch eine Fehlermeldung willst, falls kein Operator vorhanden ist, so fügst du noch die default hinzu.

Tipp: Füge die ganze Anweisung in einer while-Schleife
 
Zuletzt bearbeitet:

Neue Themen


Zurück
Oben