タグ

2021年1月13日のブックマーク (1件)

  • 小数計算の誤差 0.1 + 0.2 が 0.30000000000000004 になる理由

    です。(10進数の「整数」はすべて2進数に正しく変換できます) JavaScript に限らずコンピューターで計算をする場合は、10進数から2進数に変換してから計算して、計算結果をまた2進数から10進数に戻して表示してくれています。 例えば 2 + 3 は、コンピューターでは次のように計算されています。(10進数、2進数の変換方法はこのあと説明しますので、なんとなくそういうものだとご理解ください) コンピューターも10進数で計算すれば良さそうですが、コンピューターは「ON(1)」と「OFF(0)」を表すスイッチのかたまりのような物で作られているため、「1」と「0」のみの2進数で計算したほうが都合がいいのです。 10進数の小数が2進数に正しく変換できない理由 なぜ10進数の「小数」が2進数に正しく変換できないのでしょうか? それではまず10進数から2進数への変換方法を確認してみましょう。 1

    小数計算の誤差 0.1 + 0.2 が 0.30000000000000004 になる理由
    yoshihiro1105
    yoshihiro1105 2021/01/13
    へー!面白い。勉強になる。消費税計算させるのに最後に1が付くのがなんでだろう?と思っていたらこれか。