[ java ] 숫자를 입력 받아 2진수로 표시하기 > java

본문 바로가기

사이트 내 전체검색

java

[ java ] 숫자를 입력 받아 2진수로 표시하기

작성일 20-12-14 20:58

페이지 정보

작성자 웹지기 조회 3,000회 댓글 3건

본문

import java.util.Scanner;


public class Question1 {

    public static void main(String[] args) {

        //10진수를 2진수로 변경

        Scanner sc = new Scanner(System.in);

        

        System.out.print("숫자를 입력 하세요 : ");

        int num = sc.nextInt();

        int num2 = num;

        

        //10진수를 2진수로 바꿀때 몇번의 나눗셈이 사용되는지 확인

        int i=0;

        while(num2>0) {

            num2/=2;

            //System.out.print(num2%2+"\t");

            i++;

        }

        //확인된 2진수의 개수를 통해 각 2진수를 배열에 넣는다.

        int[] arr = new int[i];

        int j=0;

        num2 = num;

        while(num2>0) {

            arr[j] = num2%2;

            num2/=2;

            //System.out.print(num3%2+"\t");

            j++;

        }

        

        System.out.print("10진수 "+num+"의 2진수는 ");

        for(i=arr.length; i>0; i--) {

            System.out.print(arr[i-1]);

        }

        System.out.println(" 입니다.");

    }

}

 

숫자를 입력 하세요 : 5

10진수 5의 2진수는 101 입니다.


추천0

비추천 0

댓글목록

웹지기님의 댓글

profile_image 웹지기
작성일

int n;
        n=sc.nextInt();
       
        int[] b = new int[32];
        int k=0;
        while(n!=1) {
            b[k++] = n%2;
            n=n/2;
        }
        b[k]=n;
        for(int l=k; l>=0; --l) {
            System.out.println(b[l]);
        }

웹지기님의 댓글

profile_image 웹지기
작성일

int num3 = num;
        int cnt = 0;
        while(true) {
            if(num3!=0) {
                num3/=2;
                cnt++;
            } else {
                break;
            }
        }

        int[] result = new int[cnt];
        num3 = num;
        for(i=0; i<result.length; i++) {
            result[i] = num3%2;
            num3/=2;
        }
       
        System.out.print("10진수 "+num+"의 2진수는 ");
        for(i=result.length; i>0; i--) {
            System.out.print(result[i-1]);
        }
        System.out.println(" 입니다.");

웹지기님의 댓글

profile_image 웹지기
작성일

숫자입력을 정수형으로 받은 것이라면
System.out.print("10진수 "+num+"의 2진수는 "+Integer.toBinaryString(num));

전체 113건 7 페이지

이미지 목록

게시물 검색
Copyright © 즐거운 코딩 생활 ( funyphp ). All rights reserved.
PC 버전으로 보기