Takenoff Labs

Lotus Notes/Domino に関する Tips や、クラシックの名曲などを紹介します

[Notes/Domino] R6から丸め誤差が発生する

R6から、浮動小数点の演算を行った場合、循環小数になってしまう場合があるようです。

たとえば、以下のような計算を行った場合、

70.5+0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1

R5での結果

71.6

R6での結果

71.5999999999999

のようになります。@関数式 でも LotusScript でも同じ結果となります。

これは、丸め誤差と呼ばれるものらしく、R6から IEEE 754 に準拠したために発生したもののようです。

R6のほうが標準に準拠していると言えるのですが、R5と動作が変わっているので注意が必要です。

回避策としては、@Roundを使うか、いったん整数に直して演算してから小数点に戻すしかなさげです。

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
読み込み中...

Navigation

トラックバック

トラックバックはありません

コメント

コメントはありません

※コメントは承認制となっております。管理者が承認するまで表示されません。申し訳ありませんが、投稿が表示されるまでしばらくお待ちください。





(以下のタグが使えます)
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

For spam filtering purposes, please copy the number 8646 to the field below:

^
×