[ Baekjoon ] 10951번 ( Bronze III ) : A+B - 4 (Java)

ma.caron_g·2021년 12월 14일
0
post-thumbnail

1. Problem 📃

[ A+B - 4 ]

https://www.acmicpc.net/problem/10951


[ 문제 ]

두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.


2. Input 📇

[ 입력 ]

입력은 여러 개의 테스트 케이스로 이루어져 있다.

각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 < A, B < 10)


3. Output 📠

[ 출력 ]

각 테스트 케이스마다 A+B를 출력한다.


4. Example 📚

[ 입출력 예시 ]

예제 입력예제 출력
1 1
2 3
3 4
9 8
5 2
2
5
7
17
7

5. Solution 🔑

테스트 케이스가 몇 번인지 나와있지 않다.
이번 문제는 "백준 온라인 저지" 사이트를 통해 들어가면 문제 아래에 EOF(End Of File)에 대해 알아보라고 설명이 되어있다.
이번 문제에서는 EOF(End Of File)에 대해 알아볼 것이다.


1. 코드가 EOF(End Of File)를 읽을 때 까지 무한 반복할 것이다.
while에 true값을 넣어 무한 반복 시키고 try~catch(Exception e)를 이용하여
올바른 값이 들어오면 두 변수를 선언하여 각각 입력된 값들을 대입하고 값의 합을 출력한다.


2. catch(Exception e)에는 잘못된 값이 들어와서 예외처리가 발생했을 때 break;문을 넣어 입력을 종료한다.


6. Code 💻

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class Main {

	public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		StringTokenizer st = new StringTokenizer(br.readLine());
		
		while(true){
			try {
				int A = Integer.parseInt(st.nextToken());
				int B = Integer.parseInt(st.nextToken());
				System.out.println(A+B);
				st = new StringTokenizer(br.readLine());
			}
			catch(Exception e) {
				break;
			}
		}
	}

}

7. Growth 🍄

EOF(End Of File)이란?
데이터 소스로부터 더 이상 읽을 수 있는 데이터가 없음을 나타내는 용어이다.

[ Scannner에서의 EOF처리 ]
Scanner의 객체를 sc라고 가정했을 때, sc.hasNext()를 하여 값이 있는 경우 true값을, 값이 없을 경우 false값을 반환하여 처리해줄 수 있다.

[ BufferedReader에서의 EOF처리 ]
BufferedReader 객체를 br라고 가정했을 때, br == null을 하여 처리해줄 수 있다.
profile
다른 사람이 만든 것을 소비하는 활동보다, 내가 생산적인 활동을 하는 시간이 더 많도록 생활화 하자.

0개의 댓글