본문 바로가기
Study Note/Java

JAVA_ Test034_ if else 문 연습 : 두 개의 정수를 입력받아 연산하는 프로그램

by 시뮝 2018. 4. 4.
728x90


Test034  if else 문 연습 : 두 개의 정수를 입력받아 연산하는 프로그램

※ Quiz 실습 문제

   임의의 두 정수와 연산자를 입력받아 해당 연산자의 처리 결과를 출력하는 프로그램을 작성한다.

   단, if 조건문을 활용하여 처리할 수 있도록 하며, 연산 결과는 편의상 정수형으로 처리될 수 있도록 한다.


※ 문자열은 비교연산자로 비교 불가

※ 연산자의 아스키코드

+ = 43

- = 45

* = 42

/ = 47


Test034.java

import java.io.BufferedReader;

import java.io.InputStreamReader;

import java.io.IOException;


public class Test034

{

public static void main(String[] args) throws IOException

{

//▲ 주요 변수 선언

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));


// System.in.read() 메소드는 한 문자만 가져온다.

// 단, 하나의 문자를 입력받아 입력받은 문자의

// ASCII Code 값을 반환한다.


/*-----------------------------------------[풀이 ①]

int a, b;

char op;


//▲ 입력받기

System.out.print("첫 번째 정수 입력    : ");

a = Integer.parseInt(br.readLine());

System.out.print("두 번째 정수 입력    : ");

b = Integer.parseInt(br.readLine());

System.out.print("연산자 입력(+ - * /) : ");


op = (char)System.in.read();


if(op=='+')

{

System.out.printf("%n>> %d + %d = %d%n", a, b, (a+b));

}

else if(op=='-')

{

System.out.printf("%n>> %d - %d = %d%n", a, b, (a-b));

}

else if(op=='*')

{

System.out.printf("%n>> %d * %d = %d%n", a, b, (a*b));

}

else if(op=='/')

{

System.out.printf("%n>> %d / %d = %d%n", a, b, (a/b));

}

else

{

System.out.printf("입력 과정에 오류가 존재합니다.");

}

---------------------------------------------------------*/// op를 char변수에 담는 방식


/*-----------------------------------------[풀이 ②]

int a, b, op;


//▲ 입력받기

System.out.print("첫 번째 정수 입력    : ");

a = Integer.parseInt(br.readLine());

System.out.print("두 번째 정수 입력    : ");

b = Integer.parseInt(br.readLine());

System.out.print("연산자 입력(+ - * /) : ");

op = System.in.read();


if(op==43) // +

{

System.out.printf("%n>> %d + %d = %d%n", a, b, (a+b));

}

else if(op==45) // -

{

System.out.printf("%n>> %d - %d = %d%n", a, b, (a-b));

}

else if(op==42) // *

{

System.out.printf("%n>> %d * %d = %d%n", a, b, (a*b));

}

else if(op==47) // /

{

System.out.printf("%n>> %d / %d = %d%n", a, b, (a/b));

}

else

{

System.out.printf("입력 과정에 오류가 존재합니다.");

}

--------------------------------------------------------*/// op를 int변수에 담는 방식


//-----------------------------------------[풀이 ③]

int a, b, result=0;

int op;


//▲ 입력받기

System.out.print("첫 번째 정수 입력    : ");

a = Integer.parseInt(br.readLine());

System.out.print("두 번째 정수 입력    : ");

b = Integer.parseInt(br.readLine());

System.out.print("연산자 입력(+ - * /) : ");


op = System.in.read();


if(op=='+')

result = a + b;

else if(op=='-')

result = a - b;

else if(op=='*')

result = a * b;

else if(op=='/')

result = a / b;

//else

//{

// result = 0;

//}


System.out.printf("\n>> %d %c %d = %d\n", a, op, b, result);

//--------------------------------------------------------*/// op를 int변수에 담는 방식

}

}


cmd

첫 번째 정수 입력    : 15

두 번째 정수 입력    : 20

연산자 입력(+ - * /) : +


>> 15 + 20 = 35

계속하려면 아무 키나 누르십시오 . . .







728x90

댓글