[Java] 알고리즘 문제풀이
[CodeUp / java] 1023 : [기초-입출력] 실수 1개 입력받아 부분별로 출력하기
sweetychocoding
2023. 8. 5. 23:10
728x90
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
float f = scanner.nextFloat();
int numInt = (int)f;
int numFloat = (int)((f - numInt) * 1000000);
System.out.println(numInt);
System.out.println(numFloat);
}
}
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
float f = scanner.nextFloat();
String str = Float.toString(f);
//System.out.println(str.getClass().getName());
String[] strSplit = str.split("\\.");
String numInt = strSplit[0];
String numFloat = strSplit[1];
System.out.println(numInt);
System.out.println(numFloat);
}
}
둘 다... 정답이 아니란다... ㅠ
근데 이클립스에서 실행했을 때는 문제가 없다.....
뭐가 문제일까....?? (ㅜㅜ)
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String str = scanner.nextLine();
String[] strSplit = str.split("\\.");
System.out.println(strSplit[0]);
System.out.println(strSplit[1]);
}
}
문제에서 실수로 받으라 해서 실수로 받고
문자열로 변환했는데.. 찾아보니 모두 문자열로 받았다.
근데 위에... 코드는... 왜 실행이 안될까......?
더 분석해봐야징...!
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
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));
String str = br.readLine();
String[] strArr = str.split("\\.");
bw.write(strArr[0] + "\n");
//bw.newLine();
bw.write(strArr[1]);
bw.flush();
bw.close();
}
}
마지막으로 BufferedReader와 BufferedWriter을 이용해서 풀어봤다.
BufferWriter에 write 메서드는 개행을 포함하지 않아 newLine()을 쓰던가 "\n" 개행문자를 추가시켜주어야 한다.
728x90