为什么一些简单的总和会以指数数字出现?

时间:2014-11-19 16:59:47

标签: arrays perl sum exponential

我在4个地方添加4个简单数字。然而,序列中的最后一个,加起来为零,返回一个指数数字:

这样有4个部分,其中最后一部分是:

# Data check rules #4
# add the values of remaining Col5 values, and see if it = 0
my $sum_col5 = 0;
for my $i (0 .. $#listOfValues){
    print $listOfValues[$i][5] . "\n";
    $sum_col5 += $listOfValues[$i][5];
}

print语句中的值的输出在它们被添加到数组中的sum之前就是这样的:

-1.52
0.80
0.05
0.67

如果添加这些数字,则它们为0.但是当$ sum_col5在结尾处(或稍后在报告文件中)打印到屏幕时,数字为:

1.11022302462516e-16%

我在它上面运行了一个转换器,转换为:

0.000000000000000111022302462516

之前的3个序列有4个相似的简单数字,所有这些都很好。

可能出现什么问题?

0 个答案:

没有答案