wufaxian 发表于 2021-8-24 13:57

为什么计算级循环进行加法运算会出现计算精度问题?

如果是小数运算会出现精度问题比较好理解。假设\(\pi\) 存储在计算机中只能保留小数点后11位,那么计算\(\pi\) +\(\pi\)肯定不能精确到小数点后12位就会出现误差。但是以下问题,应该如何理解?

0.000000000000000001+0.000000000000000001=0.000000000000000002
0.000000000000000001*1000000000000000000=1
但是如果for循环1000000000000000000-1次进行0.000000000000000001+0.000000000000000001运算 确无法得到1这个正确结果。出现不同程度的误差。循环次数越多,误差越大。
从0.000000000000000001+0.000000000000000001=0.000000000000000002来看,不存在数据存储误差造成的计算误差。那么for循环加法造成的误差是如何产生的呢?这种问题属于哪门学课?例如《深入理解计算机系统》这门课?还是其他课程?求指教。
页: [1]
查看完整版本: 为什么计算级循环进行加法运算会出现计算精度问题?