Calculator - 1

이재현·2024년 7월 31일

Project

목록 보기
2/5

♠️ 프로젝트 설명

내일 배움 캠프에서 진행한 첫 개인 프로젝트로, 계산기 기능을 하는 간단한 프로그램 작성이다.
다만 학습을 위한 프로젝트이기 때문에 어느정도 가이드라인이 제시되어 있는 프로젝트이다.

♥️ 기능 설명

🧡 전반적인 기능 설명

기능은 lv1, lv2, lv3, 총 3단계로 나누어져 있다.
Level 1은 기본적인 계산기를 제작하는 단계이다.
변수와 타입, 그리고 연산자를 사용하는 방법과 제어문 및 반복문의 이해, 배열 및 컬랙션의 이해를 위한 단계이다.
그러다 보니 전반적으로 App.java의 main class에 전부 담겨있는 형태이다.

💛 기능을 구현할 방법 설명

1. 양의 정수 2개(0 포함)와 사칙연산 기호 받기(with Scanner)

먼저 Scanner in = new Scanner(System.in); 를 통해 객체를 생성한다.

  • System.in은 사용자로부터 입력을 받기 위한 입력 스트림이다.

그 후 타입에 맞는 입력 메서드를 작성한다. 지금 필요한 타입은 int와 char 타입이다.
int input_num1 = sc.nextInt(); 를 통해 정수형 입력 값을 받을 수 있다.
char operator = sc.next().charAt(0); 를 통해 char형 입력 값을 받을 수 있다.

  • .next()는 공백 기준 한 단어의 String형 입력 값을 받는다.
  • String은 문자열이기 때문에 해당 문자열의 첫번째 값을 가져오기 위해 .charAt(0) 메서드를 활용했다.

2. 연산 진행 후 결과값 출력

사칙연산 기호에 맞는 연산자를 사용해 연산을 진행해야 하는데, char형으로 받아온 연산자에 대해 조건문을 사용해 연산을 진행한다.
이번에는 조건이 많지 않고, 가시성을 위해서 switch case 문을 사용했다.

int result = 0; // 연산 결과를 담을 변수
Switch(operator) { // switch 옆 괄호에는 비교할 값을 집어넣는다
	case+: {
		result = input_num1 + input_num2; // 연산 진행
		break; // 반복 중지
	}
	case-: {}
	case*: {}
	case/: {
		if(input_num2 == 0) { // 분모가 0될 경우
			System.out.println(0으로 나눗셈 연산 불가”); // 예외처리를 진행
			break;
		} else {// 이외의 경우는 동일하게 진행
		}
	}
}

3. exit 입력 전까지는 무한으로 계산 진행

♣️ 전체적인 코드 리뷰

♦️ 프로젝트를 진행하며, 혹은 완성하며 느낀 점

0개의 댓글