小数点計算で誤差が出る Hit Counter

対象バージョン : 7.0, 97, 2000, 2002, 2003, 2007
最終更新日 : 2007/02/12 ( オリジナル作成日:1997/01/04 )


概 要

 プロシージャ内で小数点を含む計算を行った場合、希望している結果と異なることがある。

 

再現手順

 モジュールのデバッグ(イミディエート)ウィンドウで、次の計算を実施。

 

原 因

 式中に含まれる小数点数は倍精度浮動小数点型として扱われます。

 浮動小数点型は、内部では厳密には元の値を示しておらず、通常は代入等の操作が行われる際に丸めが行われています。

 上記の再現手順の例では、通常 ?(Print) が行われる際に丸め操作が行われますが、その前に Int 関数により小数点以下が切り捨てられ、結果として 1 少ない数値が表示されています。

 

対処方法

 小数点数が小数点下4桁までであれば、通貨型を使用します。

 

参考リンク

[VB4] データ型と演算誤差についての注意 

 

改訂履歴


目次へ戻る