投稿日 | 2023/04/09(Sun) 02:38:31 |
---|---|
投稿者 | ゆうと |
参照先 |
こんにちは
> 下記のプログラムで正しく計算されないようです。
> 計算結果は「0.3」となるはずですが、実際には「0.30000000000000004」と表示されます。
> 他にも試しましたが、計算結果が「0.3」になる場合に不具合が起こるようです。
こちらは不具合ではなく、浮動小数点型で起こる丸め誤差による現象です。
https://docs.utopiat.net/rdr/manual/syntax/expr.html#round
詳しい説明はこちらが参考になるかと思います。
https://dobon.net/vb/dotnet/beginner/floatingpointerror.html
0.2+0.1を計算した時に丸め誤差が発生しますので、一度、固定小数型の変数に入れることで正しく計算されます。
-----------
【結果】=2
【A:固定小数】=結果/10
【B:固定小数】=0.1
A+Bを報告
-----------
参考にしてください。
- WebForum -