memostack
article thumbnail
블로그를 이전하였습니다. 2023년 11월부터 https://bluemiv.tistory.com/에서 블로그를 운영하려고 합니다. 앞으로 해당 블로그의 댓글은 읽지 못할 수 도 있으니 양해바랍니다.
반응형

문제

원문: codeup.kr/problem.php?id=1023

 

[기초-입출력] 실수 1개 입력받아 부분별로 출력하기(설명)

C언어기초100제v1.2 : @컴퓨터과학사랑, 전국 정보(컴퓨터)교사 커뮤니티/연구회 - 학교 정보(컴퓨터)선생님들과 함께 수업/방과후학습/동아리활동 등을 통해 재미있게 배워보세요.  - 모든 내용 ��

codeup.kr

실수 1개를 입력받아 정수 부분과 실수 부분으로 나누어 출력한다.

** 여러 가지 방법들로 해결할 수 있다.

만약 실수 부분이 0으로 시작하지 않는다면(예를 들어 1.000009)
scanf("%d.%d", &a, &b)도 하나의 방법이 될 수 있다.

입력

실수 1개가 입력된다.
(단, 입력값은 절댓값이 10000을 넘지 않으며, 소수점 이하 자릿수는 최대 6자리까지이고
0이 아닌 숫자로 시작한다.)

1.414213

 

출력

첫 번째 줄에 정수 부분을, 두 번째 줄에 실수 부분을 출력한다.

1
414213

 

Java 풀기

실수를 입력받아, 정수부분과 소숫점 부분을 따로 출력하면 된다.

 

한 가지 주의할 점은 소숫점부분이 0으로 시작하지 않도록 해야한다.

예를들어서 1.0234인 경우,

1
234

위와 같이 출력되어야 함.

 

아래에서는 Integer.parseInt() 메소드로 문자열을 정수로 타입 변환했다.

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {
    public static void main(String[] args) throws IOException {
        final BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        final String input = br.readLine();
        final String[] nums = input.split("\\.");

        System.out.println(nums[0]);
        System.out.println(Integer.parseInt(nums[1]));
    }
}

 

채점결과

채점결과

반응형
블로그를 이전하였습니다. 2023년 11월부터 https://bluemiv.tistory.com/에서 블로그를 운영하려고 합니다. 앞으로 해당 블로그의 댓글은 읽지 못할 수 도 있으니 양해바랍니다.
profile

memostack

@bluemiv_mm

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!