大きな数字がおかしい
とある理由で、桁数の大きな計算が必要となりました。
手持ちの電卓では8桁までしか計算出来ないので、エクセルを使うことにしました。
ところが、エクセルで計算しているとなぜか計算結果があわないのです。
何がおかしいのか確かめてみるとすごい事実を知ることになりました。
なんと、エクセルでは16桁以上の計算ができないのです!
これって常識なんでしょうか?自分は表計算ソフトを使い始めてから30年以上になりますが初めてこの事実を知りました。いやーびっくりです。
16桁以上になると下の桁が0になる
どんな現象になるかというと、15桁以上になると16桁目が0になってしまいます。
例えば、12,345,467,890,123,456という計算結果は12,345,467,890,123,460となります。16桁目を四捨五入しているためです。
ちなみに、12,345,467,890,123,456という数値を直接入力すると、12,345,467,890,123,450となります。これは16桁目を切り捨てているためです。
Numbersも同様に計算出来ない
ちなみに、Macユーザーが愛用している表計算ソフトNumbers。これではどうかと試してみましたが、こちらも同様に正しく表示できません。
エクセル同様、12,345,467,890,123,456という計算結果は12,345,467,890,123,460となります。
ちょっと異なるのが、12,345,467,890,123,456という16桁の数値を直接入力すると、12,345,467,890,123,456というテキストに変換されてしまいます。
Google 表計算も同様に計算出来ない
それではGoogleの表計算アプリはどうかというと、こちらも同様に正しく表示されません。
12,345,467,890,123,456という計算結果は12,345,467,890,123,450、と最後の桁を切り捨て表示となりました。
ちょっと異なるのが、12,345,467,890,123,456という16桁の数値を直接入力すると、Numbers同様12,345,467,890,123,456というテキストに変換されました。
16桁以上の計算を正しく行うには
どうもエクセルにはアドインがあるらしいのですが、Mac版では使用できません。
その他、PC用にはフリーソフトがあるみたいですが、Mac版を探すことはできませんでした。
うーん、さてどうしたものか。引き続き調査します。