Java 2的平方根的小数部分的前64位
我有StringIndexOutOfBoundsException,因为strig只有52位长。但是,我想要2的平方根的分数部分的前64位。不幸的是,您忘记了一件重要的事情 64位双精度由52位分数和指数组成 这就是为什么二进制字符串的长度只有52位 进一步阅读: 为了获得前64位,您可以尝试执行多精度运算的数学库,并获得结果 别担心。你的问题答案是否定的,这是合理的,但它表明你没有学习家庭作业:)(或者你上课时睡着了)Java 2的平方根的小数部分的前64位,java,Java,我有StringIndexOutOfBoundsException,因为strig只有52位长。但是,我想要2的平方根的分数部分的前64位。不幸的是,您忘记了一件重要的事情 64位双精度由52位分数和指数组成 这就是为什么二进制字符串的长度只有52位 进一步阅读: 为了获得前64位,您可以尝试执行多精度运算的数学库,并获得结果 别担心。你的问题答案是否定的,这是合理的,但它表明你没有学习家庭作业:)(或者你上课时睡着了) 再见。不幸的是,你忘了一件重要的事 64位双精度由52位分数和指数组成 这
再见。不幸的是,你忘了一件重要的事 64位双精度由52位分数和指数组成 这就是为什么二进制字符串的长度只有52位 进一步阅读: 为了获得前64位,您可以尝试执行多精度运算的数学库,并获得结果 别担心。你的问题答案是否定的,这是合理的,但它表明你没有学习家庭作业:)(或者你上课时睡着了)
再见。试试BigDecimal-它具有任意计算精度。试试BigDecimal-它具有任意计算精度
double i=Math.sqrt(2);
double fpart=i-(long)i;
String s=String.valueOf(fpart);
s=s.substring(2, s.length()-1);
Long b=Long.parseLong(s);
System.out.println(Long.toBinaryString(b));
System.out.println(Long.toBinaryString(b).substring(0, 63));