import java.util.Scanner;
public class Arithmetic {
public static void main(String[] args) {
Scanner scanner =new Scanner(System.in);
System.out.println("식을 입력하세요:");
while(true) {
String op1=scanner.next();
String op2=scanner.next();
String op3=scanner.next();
if(op2=="/"||op2=="%") {
if(op3=="0")
System.out.println("0을 나눌수없습니다. 다시해주세요");
continue;
}
break;
}
switch(op2) {
case "+":
double a=Double.parseDouble(op1);
double b=Double.parseDouble(op3);
System.out.println(a+b);
break;
case "*":
double a1=Double.parseDouble(op1);
double b1=Double.parseDouble(op3);
System.out.println(a1*b1);
break;
case "/":
double a2=Double.parseDouble(op1);
double b2=Double.parseDouble(op3);
break;
case "%":
break;
default: System.out.println("연산 기호가 잘못되었습니다.");
}
scanner.close();
}
}
왜그러여..ㅠ
op1,op2,op3를 while문 내 지역변수로 써주셔서 그렇죠. break 해서 while문 밖으로 나가면 스택에서 펑 터져요ㅎ