小数点計算で誤差が出る |
対象バージョン : 7.0, 97, 2000, 2002, 2003, 2007
最終更新日 : 2007/02/12
( オリジナル作成日:1997/01/04 )
概 要
プロシージャ内で小数点を含む計算を行った場合、希望している結果と異なることがある。
再現手順
モジュールのデバッグ(イミディエート)ウィンドウで、次の計算を実施。
原 因
式中に含まれる小数点数は倍精度浮動小数点型として扱われます。
浮動小数点型は、内部では厳密には元の値を示しておらず、通常は代入等の操作が行われる際に丸めが行われています。
上記の再現手順の例では、通常 ?(Print) が行われる際に丸め操作が行われますが、その前に Int 関数により小数点以下が切り捨てられ、結果として 1 少ない数値が表示されています。
対処方法
小数点数が小数点下4桁までであれば、通貨型を使用します。
参考リンク
改訂履歴