色々な計算誤差

色々な計算誤差の違いがこんがらがりそうなので一回おさらいしてみる

  • 桁落ち

値がほぼ等しい値の減算をしたときに発生
計算結果にて、有効桁の多くが0になってしまいうため、表示する桁数が減ってしまう。

有効けた内で数値を表現するために切り捨てや切り上げ、四捨五入を行うと発生

  • 情報落ち

あまりにも桁の違う数値同士を減算した時などに発生。
小さい数値のが計算結果に反映されない

  • 打ち切り誤差

無限級数などで表される計算を有限項で打ち切ったときに発生。



wikipediaの誤差のページに、桁落ちを防ぐための計算方法が載っていたので、桁落ち防止の計算について少し考えてみる。


要は足し算の計算を除算にしてやっることで計算誤差がなくなるというもの
もう少し考えると
加算と減算は桁落ちが発生し、乗算と除算は桁落ちが発生しないということになる。
そのように考えられる。


では何故前者は桁落ちが発生し、後者では発生しないのか?
それについて書いてみようと思ったのだが、ちょっと私の知識だと説明しづらい。


説明にはちょっとした数学的な知識が必要に思える。
とりあえず桁落ちが防げる理由に関しては保留ということで。


参考サイトはこちら
けた落ちによる誤差
wikipedia-誤差