すべてのカテゴリ » 知識・教養・学問 » 知識・学問 » 数学・サイエンス

質問

終了

10÷3の答えがが3.3333333333333335になる理由を分かりやすく教えて下さい♪
なぜ5がでてくるのでしょうか・・・?

  • 質問者:匿名
  • 質問日時:2010-03-31 05:47:04
  • 0

並び替え:

パソコンの計算は
全て2進数で行われています。
なので10進数で10は2進数で1010になります。

2進数の各桁は2の倍数に相当します。
つまり、2進数で1010は、下の桁から見て
1,2,4,8のうち2と8の桁が有効となって、
2+8=10を表す事になります。

8 4 2 1
1 0 1 0

(8x1)+(4x0)+(2x1)+(1x0) = 10

では、小数点の場合はというと、
同様に右方向に半分の値を割り振ります。

つまり、10.75の時には、

8 4 2 1 0.5 0.25
1 0 1 0 1 1

(8x1)+(4x0)+(2x1)+(0.5x1)+(0.25x1) = 10.75

となります。
で、3.33333・・・ですが、

2 1 0.5 0.25 0.125 0.0625 0.03125 0.015625
1 1 0 1 0 1 0 1

と、近似値を取ることになります。
最終的に割り切れない値なので、
ビット数の上限までこれが続き、
最後の桁が5になったりします。

  • 回答者:Maku (質問から6時間後)
  • 3
この回答の満足度
  

浮動小数点のこと?
表現できるのは1/2のべき乗だから。
例えば仮数部が1ビットなら10進の0.5単位で丸められる。

  • 回答者:匿名希望 (質問から4時間後)
  • 0
この回答の満足度
  

登録不要!簡単にご利用できます わからないことは聞いてみよう

* Sooda! 会員の方は、ログインしてください。

 ? 利用規約とは?

 ? 禁止事項とは?

ニックネーム

このニックネームを記憶する
メールアドレス

* ご記入いただいたメールアドレス宛に、あなたの質問に回答がついたことをお知らせします(回答のほかSooda! からのオススメ情報も掲載されている場合があります)。
なお、このお知らせのメールはSooda! 会員の方は解除が可能です。

関連する質問・相談

Sooda!からのお知らせ

一覧を見る