アドベントカレンダー 8日目
たまには、こんなネタも。
45.2 - 38.8 はいくつでしょうか?
では、計算してみましょう。
結果は
6.40000000000001
です。
こんなに簡単んそうな計算結果でも誤差が出てしまいます。
これは、IEEE 754という数値計算の標準規格を利用しているものなら
全て発生する問題だそうで、詳細を知りたい場合は以下サイトなんかを
眺めるとよいと思います。
第4回 演算誤差の正体
たまには、こんなネタも。
45.2 - 38.8 はいくつでしょうか?
では、計算してみましょう。
- Option Explicit
- Sub SampleCode()
- Dim a As Double
- Dim b As Double
- a = 45.2
- b = 38.8
- Debug.Print a - b
- End Sub
結果は
6.40000000000001
です。
こんなに簡単んそうな計算結果でも誤差が出てしまいます。
これは、IEEE 754という数値計算の標準規格を利用しているものなら
全て発生する問題だそうで、詳細を知りたい場合は以下サイトなんかを
眺めるとよいと思います。
第4回 演算誤差の正体
0 件のコメント:
コメントを投稿