오늘보다 더 나은 내일의 나에게_

백준 10952번_A+B-5_자바 본문

ALGORITHM/baekjoon_with_java

백준 10952번_A+B-5_자바

chan_96 2022. 2. 1. 23:15
728x90

문제

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

입력

입력은 여러 개의 테스트 케이스로 이루어져 있다.
각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 < A, B < 10)
입력의 마지막에는 0 두 개가 들어온다.

출력

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

예제 입력 1

1 1
2 3
3 4
9 8
5 2
0 0

예제 출력 1

2
5
7
17
7

 

 

코드

package whileEx;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.ArrayList;
import java.util.StringTokenizer;

public class Q01_10952 {
	public static void main(String[] args) throws NumberFormatException, IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
		ArrayList<Integer> al = new ArrayList<>();
		StringTokenizer st;
		int A,B;
		
		while(true) {
			st = new StringTokenizer(br.readLine());
			A = Integer.parseInt(st.nextToken());
			B = Integer.parseInt(st.nextToken());
			
			if(A+B > 0) {
				al.add(A+B);
			}else {
				break;
			}
		}
		
		//출력
		for (int i = 0; i < al.size(); i++) {
			bw.write(al.get(i)+"\n");
		}
		bw.flush();
		bw.close();
		br.close();
	}
}

 

풀이 및 정리

- BufferedReader로 입력받고 BufferedWriter로 출력

- 입력부와 출력부를 따로 나눠 작성

- BufferedWriter와 ArrayList대신 StringBuilder를 사용하면 코드가 훨씬 간결해질 수 있다.
 대신 출력은 System.out.println(StringBuilder 변수)로 하면 된다.
728x90
Comments