[Java] 입력받은 연산자로 두 수에 대한 연산하기

haeun_06·2022년 6월 14일
0

JAVA_예제

목록 보기
4/23
post-thumbnail

0615


문제 1.

키보드로부터 연산자를 입력 받아 두 수에 대해 연산을 실행하는 프로그램을 switch문을 이용하여 작성하시오.

Ex)
수식 입력(수와 연산자 사이는 공백을 둘 것) : 8 + 9
8 + 9 = 17

소스

import java.util.Scanner;
public class SwitchExam1 {
	public static void main(String args[]) {
		Scanner sc = new Scanner(System.in);
		
		System.out.print("수식 입력(수와 연산자 사이는 공백을 둘 것) : ");
		int num = sc.nextInt();
		String op = sc.next();
		int num2 = sc.nextInt();
	
		switch(op) {
			case "+" : System.out.println(num+" + "+num2+" = "+(num+num2)); break;
			case "-" : System.out.println(num+" - "+num2+" = "+(num-num2)); break;
			case "*" : System.out.println(num+" * "+num2+" = "+(num*num2)); break;
			case "/" : System.out.println(num+" / "+num2+" = "+(num/num2)); break;
			}
	}
}

소스 풀이

  1. 순서대로 피연산자, 연산자, 피연산자 변수를 입력받을 변수를 지정하고 저장한다.
  2. switch문을 사용하여 입력한 연산자에 따라 연산을 달리 출력한다.
  3. break문을 사용하여 한 결과값만 출력할 수 있도록 한다.

출력 결과

Ex) 3 / 3 을 입력했을 경우

수식 입력(수와 연산자 사이는 공백을 둘 것) : 3 / 3
3 / 3 = 1


문제 2.

키보드로부터 연산자를 입력 받아 두 수에 대해 연산을 실행하는 프로그램을 if문을 이용하여 작성하시오.

Ex)
피연산자1을 입력하시오 : 1
피연산자2를 입력하시오 : 1
연산자를 입력하시오 : +
1 + 1 = 2

소스

import java.util.Scanner;
public class IfExam2_1 {
	public static void main(String args[]) {
		Scanner sc = new Scanner(System.in);

		System.out.print("피연산자1을 입력하시오 : ");
		int a = sc.nextInt();
		System.out.print("피연산자2를 입력하시오 : ");
		int b = sc.nextInt();
		System.out.print("연산자를 입력하시오 : ");
		char op = sc.next().charAt(0);

		if( op=='+') {
			System.out.println( a+" + "+b+" = "+(a+b) );
		}
		else if( op=='-') {
			System.out.println( a+" - "+b+" = "+(a-b) );
		}
		else if( op=='*') { 
			System.out.println( a+" * "+b+" = "+(a*b) );
		}
		else if( op=='/') {
			System.out.println( a+" / "+b+" = "+(a/b) );
		}
		else {
			 System.out.println("사칙연산자가 아닙니다.");
		}
	}
}

소스 풀이

  1. 피연산자1을 입력한 값을 변수 a에 저장합니다.
  2. 피연산자2를 입력한 값을 변수 b에 저장합니다.
  3. 연산자를 입력한 값을 변수 op에 저장합니다.
    이 때 char는 Scanner사용이 불가하므로 next()뒤에 .charAt(0)를 입력해줍니다.
  4. if문을 사용하여 op == '연산자' 에 해당하는 if문의 실행문을 실행합니다.
  5. 연산자가 아닌 값을 입력했을 경우에 "사칙연산자가 아닙니다." 를 출력합니다.

출력 결과

Ex) 1, 2, + 를 입력했을 경우

피연산자1을 입력하시오 : 1
피연산자2를 입력하시오 : 2
연산자를 입력하시오 : +
1 + 2 = 3


profile
개발새발 블로그

0개의 댓글