public class calc {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("계산식을 입력하세요");
String num1, num2;
String oper = "";
int result;
// 문자 포함되었는지 조사
boolean stop = true;
while (true) {
stop = true;
System.out.print("첫번쨰 수 = ");
num1 = scanner.next(); // 2a4
// 문자 포함되어있는지 조사
for (int i = 0; i < num1.length(); i++) {
char c = num1.charAt(i);
int asccode = (int) c;
if (asccode < 48 || asccode > 57) {
stop = false;
break;
}
}
if (stop == false) {
System.out.println("숫자가 아닙니다 다시 입력해주세요");
continue; //continue시 break문이 생략되어 다시 초기로 돌아간다.
}
break;
}
while(true) {
System.out.print("연산자(+, -, *, /) = ");
oper = scanner.next();
if(oper.equals("+") || oper.equals("-") || oper.equals("*") || oper.equals("/")) {
break;
} else {
System.out.println("연산자를 잘못 입력하셨습니다. 다시 입력하세요.");
}
}
while(true) {
System.out.println("두번쨰 수 =");
num2 = scanner.next();
for(int i = 0; i < num2.length(); i ++) {
char c = num2.charAt(i);
int ascCode = (int) c;
if( ascCode < 48 || ascCode > 57) {
stop = false;
break;
}
}
if(stop == false) {
System.out.println("숫자가아닙니다 다시 입력해주세요");
continue;
}
break;
}
//문자 - >숫자로 변환
int parseNum1 = Integer.parseInt(num1);
int parseNum2 = Integer.parseInt(num2);
if(oper.equals("+")) {
result = parseNum1 + parseNum2;
System.out.println(parseNum1 + " + " + parseNum2 + " = " + result);
} else if (oper.equals("-")) {
result = parseNum1 - parseNum2;
System.out.println(parseNum1 + " - " + parseNum2 + " = " + result);
} else if (oper.equals("*")) {
result = parseNum1 * parseNum2;
System.out.println(parseNum1 + " * " + parseNum2 + " = " + result);
} else if (oper.equals("/")) {
result = parseNum1 / parseNum2;
System.out.println(parseNum1 + " / " + parseNum2 + " = " + result);
} else {
System.out.println("잘못된 입력입니다.");
}
}
}