[2024 동계 모각코]
[2024 동계 모각코] 4회차 개인 목표 및 결과
multipotentialite1
2025. 1. 24. 13:50
일시 : 2025.01.24. 14:00 ~ 17:00
[4회차 목표]
- 입출력 문제 풀이(Scanner, BufferedReader 차이점 학습)
[4회차 결과]
- JAVA에서의 입력 클래스인 Scanner와 BufferedReader 차이점에 대해 학습하였습니다.
- BufferedReader, BufferedWriter을 사용한 입출력 문제 풀이를 진행하였습니다.
1) Scanner(패키지 : java.util)
- 간단한 사용자 입력에 적합
- 입력된 데이터를 nextInt(), nextDouble() 등으로 바로 변환 가능함.
- 기본적으로 공백을 기준으로 데이터를 분리함.
import java.util.Scanner;
public class Test_Scanner {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String a = sc.nextLine();
System.out.print(a);
}
}
2) BufferedReader(패키지 : java.io)
- 대량 데이터 처리와 성능 최적화에 적합
- 데이터가 항상 '문자열'로 읽어지기 때문에, 파싱 작업이 필요함.
- 데이터를 문자열 단위로 읽음.
import java.io.*;
public class Test_BufferedReader {
public static void main(String[] args)throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
int a = Integer.parseInt(br.readLine());
bw.write(Integer.toString(a));
bw.flush();
}
}
- BufferedReader, BufferedWriter, StringTokenizer를 활용한 입출력 문제 풀이
import java.io.*;
import java.util.StringTokenizer;
public class P10952_AB5 {
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) {
break;
}
bw.write(Integer.toString(A+B));
bw.newLine();
}
bw.flush();
}
}
import java.io.*;
import java.util.StringTokenizer;
public class P10953_AB6 {
public static void main(String[] args)throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
int T = Integer.parseInt(br.readLine());
for (int i = 0; i < T; i++) {
StringTokenizer st = new StringTokenizer(br.readLine(), ",");
int A = Integer.parseInt(st.nextToken());
int B = Integer.parseInt(st.nextToken());
bw.write(Integer.toString(A+B));
bw.newLine();
}
br.close();
bw.flush();
bw.close();
}
}
package 백준연습_250124;
import java.io.*;
import java.util.StringTokenizer;
public class P11021_AB7 {
public static void main(String[] args)throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
int T = Integer.parseInt(br.readLine());
for (int i = 1; i <= T; i++) {
StringTokenizer st = new StringTokenizer(br.readLine(), " ");
int A = Integer.parseInt(st.nextToken());
int B = Integer.parseInt(st.nextToken());
bw.write("Case #");
bw.write(Integer.toString(i));
bw.write(": ");
bw.write(Integer.toString(A+B));
bw.write("\n");
}
bw.flush();
}
}
package 백준연습_250124;
import java.io.*;
import java.util.StringTokenizer;
public class P11022_AB8 {
public static void main(String[] args)throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
int T = Integer.parseInt(br.readLine());
for (int i = 0; i < T; i++) {
StringTokenizer st = new StringTokenizer(br.readLine(), " ");
int A = Integer.parseInt(st.nextToken());
int B = Integer.parseInt(st.nextToken());
// bw.write("Case #");
// bw.write(Integer.toString(i+1));
// bw.write(": ");
// bw.write(Integer.toString(A));
// bw.write(" + ");
// bw.write(Integer.toString(B));
// bw.write(" = ");
// bw.write(Integer.toString(A+B));
bw.write("Case #" + (i+1) + ": " + A + " + " + B + " = " + (A+B));
bw.write("\n");
}
bw.flush();
}
}