본문 바로가기
자바페스티벌2

10진수 정수를 입력받아 2진수로 변환해서 출력하시오.

by 연이라이프스토리 2023. 1. 23.

저는 전공자가 아니라

처음에 문제를 보고 많이 당황했었는데요;; 

여기에 오신 여러분도 그러셨을 꺼라 생각하며...도움이 되셨길 바랍니다^^

 

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
package 자바페스티벌2;
 
import java.util.Scanner;
 
public class ex04 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("숫자입력 >> ");
        int n = sc.nextInt();
        int sec = 1;
        int cnt = 0
        String s = "";
 
        while (true) { 
            if (n < 2 * sec) {
                s += 1 + " ";
                n = n - sec; 
                for (int i = cnt; i > 0; i--) {
                    sec /= 2
                    if (n > sec) {
                        s += 1 + " ";
                        n = n - sec;
                    } else if (n == sec) {// 3 /4
                        s += 1 + " ";
                        n = n - sec;
                        if (sec == 2) {
                            s += 0 + " ";
                            break;
                        }
                    } else {
                        s += 0 + " ";
                    }
                }
                break;
            }
            sec *= 2;
            cnt++;
        }
        System.out.println(s);
    
    }
}
cs

 

 

 

💜조금이나마 도움이 되셨다면 좋아요와 구독 부탁드립니다💜

댓글