私は面白いばかげた問題を抱えています:なぜそれをjavascript
示しているの10.2 - 17 = -6.800000000000001
ですか?
ここで似たようなものが見つかりました:javascriptでマイナス演算を計算すると、誤った値が返されますが、数値を丸めることができません。
使用する小数点以下の桁数を指定せずに、どういうわけかこれを修正できますか?(実際には、小数点以下6〜7桁の結果が得られます)
私は面白いばかげた問題を抱えています:なぜそれをjavascript
示しているの10.2 - 17 = -6.800000000000001
ですか?
ここで似たようなものが見つかりました:javascriptでマイナス演算を計算すると、誤った値が返されますが、数値を丸めることができません。
使用する小数点以下の桁数を指定せずに、どういうわけかこれを修正できますか?(実際には、小数点以下6〜7桁の結果が得られます)
浮動小数点演算は必ずしも正確ではありません。
特に、浮動小数点値としての10.2の正確な表現はないため、代わりに最も近い表現可能な値が格納されます。この値は10.2とはわずかに異なります。
これを処理する最も簡単な方法は、数値を表示するときに小数点以下第2位に四捨五入することです。
一部の言語には、decimal
10.2を正確に表すことができるタイプがあります。でも:
0.1 / 0.3
小数として正確に表すことはできません。結果を表示するときに、結果を小数点以下第2位に四捨五入する必要がある場合があります。