我有一个for循环,我想每次增加0.1的变量,但是值的变化与增量不同,我不确定为什么.
我已经简化了for循环,它仍然提供了一个奇怪的输出:
for (my $t = 1000; $t < 1500 ;$t+=0.1) {
print "$t\n";
}
Run Code Online (Sandbox Code Playgroud)
它打印:
1034.9
1035
1035.1
1035.2
1035.3
1035.4
1035.49999999999
1035.59999999999
1035.69999999999
1035.79999999999
1035.89999999999
1035.99999999999
1036.09999999999
1036.19999999999
1036.29999999999
[it then goes on like this to 1500]
Run Code Online (Sandbox Code Playgroud)
我不知道小数位的来源.这是我对Perl的理解的问题吗?
提前致谢.