采用乘二取余法,num*2后取整数部分作为二进制数,小数部分继续乘法
public class test_7 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
double num = scanner.nextDouble();
System.out.println(printBin(num));
}
public static String printBin(double num) {
StringBuilder st = new StringBuilder("0.");
while (st.length()<=32 && num != 0){
num *= 2;
int sum = (int) num;
st.append(sum);
num -= sum;
}
return st.length() <= 32 ? st.toString() : "ERROR";
}
}