A+B - 7(11021) 풀이

2023. 6. 14. 10:08BaekJoon/반복문

문제내용

사용자에게 테스트 개수를 입력 받고 테스트 개수만큼  A,B를 입력받아 Case #테스트수: A+B를 출력하는 문제이다.


풀이

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 NumberFormatException, IOException {
		BufferedReader rd = new BufferedReader(new InputStreamReader(System.in));
		BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
		StringTokenizer st;
		int t = Integer.parseInt(rd.readLine());
		for(int i = 1; i <= t; i++){
			st = new StringTokenizer(rd.readLine());
			int result = Integer.parseInt(st.nextToken())+Integer.parseInt(st.nextToken());
			bw.write("Case #"+i+": "+result+"\n");
		}
		bw.flush();
		bw.close();
	}
}

사용자에게 임의의 수를 입력받기 위해 BufferedReader와 StringTokenizer를 사용해 t와 A+B를 더한 값을 저장하는 result에 입력받았다. 

출력하기 위해 BufferedWriter를 사용했고 테스트 개수만큼 입력받기 위해 for문을 사용했다. 이유는 반복 횟수가 정해져있기 때문이다.

반복문에서 각각 A와 B를 더한 값과 반복횟수를 저장하고있는 i를 이용해 출력해주었다.

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 NumberFormatException, IOException {
		BufferedReader rd = new BufferedReader(new InputStreamReader(System.in));
		BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
		StringTokenizer st;
		int t = Integer.parseInt(rd.readLine());
		for(int i = 0; i < t; i++){
			st = new StringTokenizer(rd.readLine());
			int result = Integer.parseInt(st.nextToken())+Integer.parseInt(st.nextToken());
			bw.write("Case #"+i+": "+result+"\n");
		}
		bw.flush();
		bw.close();
	}
}

위 풀이와 다른점은 for문 변수 i의 값의 문제이다. 예제에서는 1,2,3,4,5를 출력하라고 하였으나 위의 코드대로 출력하게되면 0,1,2,3,4로 출력하게 된다. 그러므로 for문 변수의 선언 및 조건을 부여할때 1을 증가시켜도되고 출력할 때 i+1의 값을 출력하면 된다.

'BaekJoon > 반복문' 카테고리의 다른 글

별 찍기 - 1 (2438) 풀이  (0) 2023.06.14
A+B - 8 (11022) 풀이  (0) 2023.06.14
빠른 A+B 풀이(15552)  (0) 2023.06.12
코딩은 체육과목 입니다 풀이  (0) 2023.06.12
영수증 풀이  (0) 2023.06.12