반응형
계산기 프로그램
덧셈, 뺄셈, 곱셈, 나눗셈을 할 수 있는 계산기 프로그램을 만드시오.
예제 입출력
입력 | 출력 |
1 + 1 = |
2 |
10 - 21 * 5 = |
-55 |
코드
1. 변수 선언
boolean plug : 연산자와 피연산자를 순서대로 입력받는다. plug가 false면 연산자를 입력받고, true면 피연산자를 입력받는다.String op : 연산자를 저장하기 위한 변수int bNum : 입력받은 수와 계산할 숫자(누적 계산된 수)
2. 연산자가 "="가 아닐동안 반복하기 위한 do-while
while(true)에 if문으로 break를 주는 것과 동일한 작용을 한다.
3. plug가 true일 경우
plug가 true이면 피연산자를 입력받는다. 첫번째 피연산자는 bNum을 선언할 때 입력받았다.피연산자를 입력받았다면 계산할 부호가 정해져있으므로 해당 부호를 찾기 위해 if-elseif로 bNum에 입력받은 num을 계산하여 저장한다.
4. plug가 false일 경우
plug가 false이면 op 변수에 연산자를 저장한다.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// 연산자를 입력받을지 피연산자를 입력받을지 구별할 변수
boolean plug = false;
// 연산자를 저장할 변수
String op = "";
// 최종 계산을 출력할 변수, 첫 피연산자는 미리 저장해둔다.
int bNum = scanner.nextInt();
// 연산자가 "="가 아닐동안 반복
do {
// plug가 true이면 피연산자를 입력받는다.
if (plug) {
// 피연산자 저장
int num = scanner.nextInt();
// bNum에 num 계산
if (op.equals("+")) bNum += num;
else if (op.equals("-")) bNum -= num;
else if (op.equals("*")) bNum *= num;
else if (op.equals("/")) bNum /= num;
// plug가 false이면 연산자 저장
} else op = scanner.next();
plug = !plug;
} while (!op.equals("="));
System.out.println(bNum);
}
}
반응형
'코딩 테스트 > [JAVA] 백준' 카테고리의 다른 글
[JAVA] 백준 2609번 최대공약수와 최소공배수 | 자바 BOJ (0) | 2022.04.06 |
---|---|
[JAVA] 백준 7789번 텔레프라임 | BOJ 자바 (0) | 2022.03.24 |
[JAVA] 백준 5354번 J박스 | BOJ 자바 bronze 3 (0) | 2022.03.22 |
[JAVA] 백준 4388번 받아올림 | BOJ 자바 bronze 3 (0) | 2022.03.21 |
[JAVA] 백준 2783번 삼각 김밥 | BOJ 자바 bronze 3 (0) | 2022.03.18 |
댓글