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

문제

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

 

[기초-입출력] 정수 1개 입력받아 나누어 출력하기(설명)

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

www.codeup.kr

 

다섯 자리의 정수 1개를 입력받아 각 자리별로 나누어 출력한다.

참고
scanf("%1d%1d%1d%1d%1d", &a, &b, &c, &d, &e);
를 사용하면 1개의 숫자로 각각 구분되어 저장된다.

예시
읽어들인 값을 적당히 바꿔 출력하기 위해서

printf("[%d]", a*10000);

과 같은 방법도 가능하다.

 

 

입력

다섯 자리로 이루어진 1개의 정수를 입력받는다.
(단, 10,000 <= 입력받는 수 <= 99,999 )

75254

 

출력

각 자리의 숫자를 분리해 한 줄에 하나씩 [ ]속에 넣어 출력한다.

[70000]
[5000]
[200]
[50]
[4]

 

Java 풀기

  1. 입력받은 값을 문자열을 하나의 문자로 쪼갠다.
  2. 차례대로 출력한다. (단, 문자열의 길이 - i - 1번 만큼 10을 곱하여 출력)
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 char[] input = br.readLine().toCharArray();

        for(int i=0; i<input.length; i++) {
            int temp = (int) ((input[i] - '0') * Math.pow(10, input.length-i-1));
            System.out.printf("[%s]\n", temp);
        }
    }
}

 

채점결과

채점결과

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

memostack

@bluemiv_mm

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