摘要 讨论自然对数 ln(x)的计算精度问题。
例1. 计算 ln(0.999999999999996) .
不妨用Python计算,则有:

若用Java代码计算:
import java.lang.Math;
public class Ln{
    public static void main(String[] args) {
        double x = 0.999999999999996;
        double result = Math.log(x);
        System.out.println(result);
    }
}
 
则运行后,输出同样的结果:-3.9968028886505714E-15 .
然而,正确值是 -0.4000000000000008e-14(ISRealsoft 提供)。这样,二者的输出中似乎没有正确数字。实际上,由计算机的错误计算(二十九)知,输出中有3位数字是正确的。故错误率均为 (16-3)/16 = 81.25% .







![[WUSTCTF2020]颜值成绩](https://i-blog.csdnimg.cn/direct/5b1af54cacb54a2ab879e7677bbfd8c4.png)











