Perl で大きな数字を扱うと、計算結果があわないという相談を受けた。 - Perl の丸め誤差?349347958500 * 466593284000 / 699889926000 という計算が 232898639000 にならずに 232898638999 になるという。 そもそもすごい桁数。3000億 * 4000億って、これ何の計算なの? と聞くと、金額計算のプログラムで、巨大数値入力テストでのエラーケースだという。なるほど、納得。 - ソースコードを確認ちゃんとソースを持ってきてくれていたので、該当箇所を探してみる。あった。って、floor って関数を呼んでるのね。Perl というかこれが悪いんじゃないの? これってどの名前空間のメソッド? と思って先頭行の use を探してみるとそれらしきものがあった。 use POSIX qw(math_h) POSIX って、POSIX 規