我已经编写了一个使用Gregory Leibniz公式估算pi的程序,但是它不会计算到18个小数点。它最多只能计算5个小数点。有什么建议吗?
答案 0 :(得分:4)
使用
cout.precision(50);
提高打印输出的精度。这里50是输出中的小数位数。
答案 1 :(得分:0)
设置cout.precision
仅影响输出上的数字位数,而不影响数字的实际精度。任何超过该类型精度的东西都会被0填充。
Float有23位尾数,所以它只能精确到6-7位数。 Double的准确率约为15-16位。
要获得更高的精度,唯一的方法是使用big number库或为自己编写一个库。