HOWTO · Java

Java에서 10진수를 2진수로 변환

이 튜토리얼은 Java에서 10진수를 2진수로 변환하는 방법을 보여줍니다.

Java에서 10진수를 2진수로 변환하는 다양한 접근 방식이 있습니다. 이 튜토리얼은 Java에서 10진수를 2진수로 변환하는 다양한 방법을 보여줍니다.

Java에서 비트 연산자, 배열 및 Math.pow() 메서드를 사용하여 십진수를 이진수로 변환할 수 있습니다.

Java에서 비트 연산자를 사용하여 10진수를 2진수로 변환

비트 연산자는 일반적으로 산술 연산자보다 빠르게 작동합니다. Java에서 10진수를 2진수로 변환하는 데에도 사용할 수 있습니다. 예를 참조하십시오.

package delftstack;

import java.util.Scanner;

class Delftstack {
  public void DecimalToBinary(int number) {
    // Size of the integer is 32 bits
    for (int x = number - 1; x >= 0; x--) {
      int k = number >> x;
      if ((k & 1) > 0) {
        System.out.print("1");
      } else {
        System.out.print("0");
      }
    }
  }
}

public class Decimal_to_Binary {
  public static void main(String[] args) {
    Delftstack Demo = new Delftstack();
    System.out.println("Please enter a number");
    Scanner New_Number = new Scanner(System.in);
    int number = New_Number.nextInt();
    System.out.println("The Input Decimal Number : " + number);
    System.out.print("The Output Binary Number : ");
    Demo.DecimalToBinary(number);
  }
}

위의 코드는 10진수를 입력받아 그 숫자를 2진수로 변환합니다. 출력 보기:

Please enter a number
50
The Input Decimal Number : 50
The Output Binary Number : 00000000000011001000000000000000000000000000110010

Java에서 배열을 사용하여 10진수를 2진수로 변환

Java에서 배열을 사용하여 십진수를 이진수로 변환하려면 아래 단계를 따르십시오.

  • 먼저 숫자를 2로 나눈 나머지를 배열에 저장합니다.
  • 다음으로 숫자를 2로 나눕니다.
  • 그런 다음 숫자가 0보다 클 때까지 위의 단계를 반복합니다.
  • 마지막으로 배열을 역순으로 인쇄합니다.

위의 단계를 기반으로 한 예를 시도해 보겠습니다.

package delftstack;
import java.io.*;
import java.util.Scanner;

class Decimal_to_Binary {
  static void DecimalToBinary(int number) {
    // an array which will store the binary number
    int[] Binary_Number = new int[1000];

    int x = 0;
    while (number > 0) {
      // store the remainder in the array
      Binary_Number[x] = number % 2;
      number = number / 2;
      x++;
    }

    // print the final array in reverse order
    for (int y = x - 1; y >= 0; y--) System.out.print(Binary_Number[y]);
  }

  public static void main(String[] args) {
    System.out.println("Please enter a number");
    Scanner New_Number = new Scanner(System.in);
    int number = New_Number.nextInt();
    System.out.println("The Input Decimal Number :" + number);
    System.out.print("The Output Binary Number : ");
    DecimalToBinary(number);
  }
}

위의 코드는 10진수를 입력받아 그 숫자를 2진수로 변환합니다. 출력 참조:

Please enter a number
33
The Input Decimal Number :33
The Output Binary Number : 100001

Java에서 Math.pow()를 사용하여 10진수를 2진수로 변환

Math.pow() 메서드는 십진수를 이진수로 변환할 수도 있습니다. 예를 들어 보겠습니다.

package delftstack;
import java.io.*;
import java.util.Scanner;

public class Decimal_to_Binary {
  static int DecimalToBinary(int number) {
    int Binary_number = 0;
    int count = 0;
    while (number != 0) {
      int remainder = number % 2;
      double temp = Math.pow(10, count);
      Binary_number += remainder * temp;
      number /= 2;

      count++;
    }

    return Binary_number;
  }

  public static void main(String[] args) {
    System.out.println("Please enter a number");
    Scanner New_Number = new Scanner(System.in);
    int number = New_Number.nextInt();
    System.out.println("The Input Decimal Number : " + number);
    System.out.print("The Output Binary Number : ");
    System.out.println(DecimalToBinary(number));
  }
}

위의 코드는 10진수를 입력받아 그 숫자를 2진수로 변환합니다. 출력 참조:

Please enter a number
65
The Input Decimal Number : 65
The Output Binary Number : 1000001