私は自分のコードの一部をテストしていましたが、javascript で .1+.2 を追加すると、 .3 の代わりに .30000000000000004 が得られます。私はこれを理解していません。しかし、.1+.3 を追加すると、.4 になります。私はそれをグーグルで検索し、倍精度の追加について何かを見つけました。しかし、私はそれが何であるかを知りません。
2519 次
3 に答える
14
必須のリンクは次のとおりです。すべてのコンピューター科学者が浮動小数点演算について知っておくべきこと
基本的に、ほとんどのコンピューターで使用される浮動小数点形式では正確に表現できない 10 進数が多数あるため、強調表示したような問題が発生します。
于 2011-05-23T06:26:12.087 に答える
2
すべてのコンピューター科学者が浮動小数点演算について知っておくべきことについて目を覚まし続けることができない場合は、代わりにJavaScriptのjavascript固有の丸めを試してください。
于 2011-05-23T07:48:33.050 に答える
1
浮動小数点数は、有限のビット数に格納されるため、有限の精度を持ちます。
格納しようとしている数値は正確に格納できないため、近似値が使用されます。
于 2011-05-23T06:26:28.323 に答える