for ループがあり、変数を毎回 0.1 ずつインクリメントしたいのですが、値がインクリメントとは異なる方法で変化し、その理由がわかりません。
for ループを単純化しましたが、それでも奇妙な出力が得られます。
for (my $t = 1000; $t < 1500 ;$t+=0.1) {
print "$t\n";
}
それは印刷します:
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]
小数点以下の桁数がどこから来ているのかわかりません。これは私の Perl の理解に問題がありますか?
前もって感謝します。