2013/06/14

何回か分けて浮動小数点演算について書いてみます

少々技術系の記事が滞っていました。
浮動小数点演算について何回かに分けて投稿したいと思います。

今回は、予告という事で本当にさわりだけ。

1/3= ?

答えは何になるでしょう?

1/3≒ 0.33333333333333333333333333333333333333333333333333

無限小数になります。「≒」と書いたのはおよその数値にしかならないので、そのように表記しました。

では、1/3*3はどうなるでしょう???

1/3*3= 1

ここまで読んであれ?と思われた方!!

1/3の時点で誤差が生じていたはず、なぜ3を乗じたら元に戻るわけ??

なかなかです。

そんなわけ無いでしょと思われる方!! 自慢のExcelでやってみてください。

答えは1になりますから。

別に 1*3/3と順番を変更して実行されているわけではないんです。

これらの不思議なこと、また、浮動小数点演算は整数(小数を含まない値)にも不思議なことを起こします。
それでは今回はここまでという事で。それではまた。

0 コメント:

コメントを投稿