728x90
반응형
백준 알고리즘 문제 10950번 https://www.acmicpc.net/problem/10950
문제
두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.
입력
첫째 줄에 테스트 케이스의 개수 T가 주어진다.
각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 < A, B < 10)
출력
각 테스트 케이스마다 A+B를 출력한다.
시도
5번의 횟수를 입력받아 for 반복문으로 덧셈하여 BufferedWriter 로 출력해야지!
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
int cnt = Integer.parseInt(bf.readLine()); // 5
for(int i = 0; i < cnt; i++) {
String numbers = bf.readLine();
StringTokenizer st = new StringTokenizer(numbers);
int A = Integer.parseInt(st.nextToken());
int B = Integer.parseInt(st.nextToken());
//System.out.println(A+B);
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
bw.write(A+B+"\n");
bw.flush();
bw.close();
}
}
}
했는데 반복문에 close()를 썼더니 제대로 안나왔다.
flush() 로 출력만 반복문 안에 넣어주고, close()는 반복문 바깥으로 빼야한다.
(정답소스)
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
int cnt = Integer.parseInt(bf.readLine()); // 5
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
for(int i = 0; i < cnt; i++) {
String numbers = bf.readLine();
StringTokenizer st = new StringTokenizer(numbers);
int A = Integer.parseInt(st.nextToken());
int B = Integer.parseInt(st.nextToken());
bw.write(A+B+"\n");
bw.flush();
}
bw.close();
}
}
끝!
728x90
반응형