👉🏻 문제 풀이 주의점
- 입력이 공백
- 출력조건에 상대오차 또는 절대오차 범위 이하여야 함.
👉🏻 풀이방법
- Scanner로 입력받아 연산
- BufferedReader로 입력받아 연산
1) StringTokenizer
2) split
👉🏻 풀이 - 방법1) Scanner
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
double a = in.nextDouble();
double b = in.nextDouble();
in.close();
System.out.println(a/b);
}
}
가장 기초적인 입력 방법
문제에 나와있듯이 오차 범위를 벗어나지 않게 하기 위해 double 형으로 출력함.
👉🏻 풀이 - 방법2) BufferedReader - StringTokenizer
BufferedReader 를 사용하여 readLine()을 통해 한 행을 읽어온 뒤 문자열을 공백단위로 분리 ⇒ StringTokenizer 클래스 사용
st.nextToken()은 문자열을 반환하므로 Double.parseDouble()로 double 형변환 시켜주어야 함.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
StringTokenizer st = new StringTokenizer(str," ");
double a = Double.parseDouble(st.nextToken());
double b = Double.parseDouble(st.nextToken());
System.out.println(a/b);
/*
굳이 String 변수 생성하지 않고 입력과 동시에 구분자로 분리
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine()," ");
double a = Double.parseDouble(st.nextToken());
double b = Double.parseDouble(st.nextToken());
System.out.println(a/b);
*/
}
}
👉🏻 풀이 - 방법 3) BufferedReader - split
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String[] str = br.readLine().split(" ");
double a = Double.parseDouble(str[0]);
double b = Double.parseDouble(str[1]);
System.out.println(a/b);
}
}
Uploaded by Notion2Tistory v1.1.0