계산기 만들기 -java

SJW·2023년 6월 3일
0

Bare Minimum Requirement (최소 기능 구현)

src 폴더 내의 main.java 파일을 수정하여 사칙연산이 가능한 계산기를 구현합니다.

  • 사용자의 입력으로 첫 번째 숫자, 연산자, 두 번째 숫자를 받아야 합니다.
  • 연산자의 종류는 +, -, *, / 네 가지입니다.
  • 연산자의 종류에 따라 조건을 분기합니다.
  • 소수점 연산을 수행할 수 있어야 합니다.
  • 연산 결과를 콘솔에 출력합니다.

public static void main(String[] args) {
System.out.println("===Java Calculator===");
System.out.println("숫자를 입력하세요");
Scanner input1 = new Scanner(System.in);
/
요구 사항에 따라 간단한 계산기를 만들어주세요.
1. 사용자의 입력으로 첫 번째 숫자, 연산자, 두 번째 숫자를 받아야 합니다.
2. 연산자의 종류는 +, -,
, / 입니다.
3. 소수점 연산을 수행할 수 있어야 합니다.
4. 연산 결과를 콘솔에 출력합니다.
/
// TODO...
double a = input1.nextDouble();
System.out.println("연산자를 입력해 주세요");
Scanner input2 = new Scanner(System.in);
String b = input2.nextLine();
if(b.equals("+")){
return(a + c);
}
else if(b.equals("-")){
return(a - c);
}
else if(b.equals("x")){
return(a
c);
}
else if(b.equals("/")){
return(a / c);
}

System.out.println("숫자를 입력하세요");
Scanner input3 = new Scanner(System.in);
double c = input3.nextDouble();

}

문제점: 1.나는 코드를 main메서드에 작성을 했다. main메서드의 반환 타입은 void이다. void타입에는 return문을 사용할수 없다.
2. 연산 순서가 잘못되었다. 지금처럼 중간에 연산을 하는게 아니라 두 수를 입력 받은후에 연산을 하여야 한다.
3.변수 선언 위치가 잘못되었다. 변수'c'가 사용되기 전에 선언이 되어야 하는데 사용이된 후에 'c'를 선언하고 있다.
4.연산 결과를 출력하는 부분이 없다. System.out.println ->이 명령어가 있어야 한다.

수정 후:
public static void main(String[] args) {
System.out.println("===Java Calculator===");
System.out.println("숫자를 입력하세요");
Scanner input1 = new Scanner(System.in);
/
요구 사항에 따라 간단한 계산기를 만들어주세요.
1. 사용자의 입력으로 첫 번째 숫자, 연산자, 두 번째 숫자를 받아야 합니다.
2. 연산자의 종류는 +, -,
, / 입니다.
3. 소수점 연산을 수행할 수 있어야 합니다.
4. 연산 결과를 콘솔에 출력합니다.
*/
// TODO...

double a = input1.nextDouble();

System.out.println("숫자를 입력하세요");
Scanner input3 = new Scanner(System.in);
double c = input3.nextDouble();

System.out.println("연산자를 입력해 주세요");
Scanner input2 = new Scanner(System.in);
String b = input2.nextLine();

if(b.equals("+")){
  double result = a + c;
}
else if(b.equals("-")){
  double result = a - c;
}
else if(b.equals("x")){
  double result = a * c;
}
else if(b.equals("/")){
  double result = a / c;
}

System.out.println(result);

}
문제점 : 1. result가 if문 안에서만 유효하다. 즉, System.out.println(result);에서 result를 사용할수 없다.

수정 후:
public static void main(String[] args) {
System.out.println("===Java Calculator===");
System.out.println("숫자를 입력하세요");
Scanner input1 = new Scanner(System.in);
/
요구 사항에 따라 간단한 계산기를 만들어주세요.
1. 사용자의 입력으로 첫 번째 숫자, 연산자, 두 번째 숫자를 받아야 합니다.
2. 연산자의 종류는 +, -,
, / 입니다.
3. 소수점 연산을 수행할 수 있어야 합니다.
4. 연산 결과를 콘솔에 출력합니다.
*/
// TODO...

double a = input1.nextDouble();

System.out.println("숫자를 입력하세요");
Scanner input3 = new Scanner(System.in);
double c = input3.nextDouble();

System.out.println("연산자를 입력해 주세요");
Scanner input2 = new Scanner(System.in);
String b = input2.nextLine();

double result = 0.0;
if(b.equals("+")){
   result = a + c;
}
else if(b.equals("-")){
   result = a - c;
}
else if(b.equals("x")){
   result = a * c;
}
else if(b.equals("/")){
  result = a / c;
}

System.out.println(result);

}

https://github.com/sksjw95/if-else-if-else-.git
=================================
구글링을 해보니 switch문을 이용해 계산기를 만드는 방법을 찾았다.
개인적으로 switch문을 공부하고 만들어보니 어렵지 않게 만들 수 있었다.
https://github.com/sksjw95/switch-.git

0개의 댓글