숫자를 2 진수로 변환하는 프로그램을 작성했으며 입력이 0011 인 경우 잘못된 출력을 제공합니다. 0011의 경우 0011이 3이어야하지만 그렇지 않으면 9를 제공합니다. 그것은 다른 입력에 대해 정확합니다.프로그램 Java 코드에서 이진수의 2 진수로 변환
코드 :
public class BinaryToDecimal {
static int testcase1=1001;
public static void main(String[] args) {
BinaryToDecimal test = new BinaryToDecimal();
int result = test.convertBinaryToDecimal(testcase1);
System.out.println(result);
}
//write your code here
public int convertBinaryToDecimal(int binary) {
int powerOfTwo=1,decimal=0;
while(binary>0)
{
decimal+=(binary%10)*powerOfTwo;
binary/=10;
powerOfTwo*=2;
}
return decimal;
}
}
좋은 설명을보십시오. – Aashray