![[백준] 10952 - A + B-5](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb9oVvG%2FbtsyWg8EyKx%2FqkW9IDkGV6G38A73S3dDAK%2Fimg.png)
[백준] 10952 - A + B-5알고리즘/백준2023. 10. 20. 23:14
Table of Contents
• 문제


A+B를 해주는 문제이다.
이번 문제는 테스트케이스를 받는 것이아니라
두 개의 값에 모두 0이들어오면 출력하고 프로그램을 종료하는 프로그램이다.
• 풀이
이번문제에서는 입출력을 BufferedReader, BufferdWriter를 이용하여 풀 것이다.
먼저 프로그램이 종료되는 조건을 살펴보면
A와 B모두 0이 입력되었을때이므로
if(A == 0 && B == 0)
A가 0이고, B도 0이면 이라는 코드이다.
위 코드가 들어왔을 경우 BufferdWriter를 사용할 예정이므로 bw.flush를 해주고 반복문을 빠져나오면 된다.
이렇게 반복문의 정해진 종료시점이 없을때는 while문을 사용하는 것이 좋다.
이제 전체코드를 살펴보자
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 br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
while(true) {
StringTokenizer st = new StringTokenizer(br.readLine(), " ");
int A = Integer.parseInt(st.nextToken());
int B = Integer.parseInt(st.nextToken());
if(A == 0 && B == 0) {
bw.flush();
break;
}
bw.write(A+B + "\n");
}
bw.close();
}
}
while(true)로 하면 무한반복을 할 수 있고 if문에서 A와 B에 0이 들어오면 break로 반복문을 빠져나올 수 있다.
write()메서드를 사용할 때 "\n"개행을 넣어줘야 옳바르게 출력되니 주의하도록하자
•마무리
write()메서드를 사용할 때 왜 개행을 넣어주지않으면 출력이 안되는지 알아보면 좋을 것 같다.
728x90
'알고리즘 > 백준' 카테고리의 다른 글
[백준] 10807 - 개수 세기 (1) | 2023.10.24 |
---|---|
[백준] 10951 - A + B-4 (0) | 2023.10.20 |
[백준] 2439 - 별 찍기-2 (0) | 2023.10.20 |
[백준] 2438 - 별 찍기 -1 (1) | 2023.10.19 |
[백준] 11022 - A + B -8 (1) | 2023.10.18 |
@leegeonwoo :: geonwoo
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!