계산기의 기능을 먼저 생각해보았다.
기본적인 계산기 기능을 만들꺼기 때문에
사칙연산 기능이 필요했다.
근데, 사칙연산 할때 나누기에서 문제가 발생했다.
기본적으로 0을 나누지 못하기 때문이다.
그래서 if 문을 통해 사칙연산을 구성해 보았다
if (operator, equlas("+")) { # 더하기
return num1 + num2;
} else if (operator, equals("-")){ # 빼기
return num1 - num2;
} else if (operator, equals("*")){ # 곱하기
return num1 * num2;
} else if (operator, equals("/")) { # 문제의 나누기
if(num2 == 0) {
return 0;
}
return (double) num1/num2;
} else{
sout("null")
return 0;
여기다가 반복문에 대한 공부를 해야했다.
계산기는 기본적으로 사칙연산을 시행하면 그 다음 사칙연산에 있어서 그 전 값을 그대로 유지하고 넘어가기 때문이다.
이를 무한 반복식인 while 문에 대입하여 풀어보려 했다.
하지만 문제가 발생했다. for문의 조건식 대입하는거에 비해 while문은 해보지 않았기에 이해도가 떨어지는 것이다.
그래서 while문을 다음과 같이 짜보았다.
while (true) { #무한반복
# 사이에 연산식
if (isValid) {
System.out.println("결과: " + result);
}
System.out.println("더 계산하시겠습니까? (exit 입력 시 종료)");
sc.nextLine();
String input = sc.nextLine();
if (input.equals("exit")) {
System.out.println("프로그램을 종료합니다.");
break;
처음엔 while 문 사이에 연산식을 넣어보진 않았다.
그러고 실행해 본 결과, 더 계산하시겠습니까? 라는 문구가 먼저 뜨는 것이다. 그래서 밑으로 내려보니 계산 입력란이 먼저 출력 되었고 성공적으로 콘솔창을 실행시킬 수 있었다.