- 832 名前:132人目の素数さん [2007/01/10(水) 16:03:56 ]
- 鉄道総合板の
ソースで食うか醤油で食うか迷うもの hobby9.2ch.net/test/read.cgi/train/1167296656/l50 から飛んできますたよ。 もちろん数学は素人なんですが、仕事がソフト屋(?)なので 「0.1」がコンピュータでは正しく扱えない話を思いだしました。 小数の桁というもの自体、何進数で数を表現しているかに依存します。 10(=2×5)進数で1÷10を表現するとうまく割り切れて0.1になりますが コンピュータが使う2進数では1÷1010(10進数で10)はこんな感じです。 1の位:0 0.1の位(10進数で言う2分の1[0.5]の位):0 0.01の位(10進数で言う4分の1[0.25]の位):0 0.001の位(10進数で言う8分の1[0.125]の位):0 0.0001の位(10進数で言う16分の1[0.0625]の位):1 0.00001の位(10進数で言う32分の1[0.03125]の位):1 0.000001の位(10進数で言う64分の1[0.015625]の位):0 … つまり0.000110…で割り切れない数です。 1÷3は3進数の数え方では1÷10になり、結果は0.1という表記、 これを10(10進数の3)倍すると1。 そういう「割り算の結果」の数を前提にしているかそうでないかで話が違うのでしょうね。 よくわかりませんが。
|

|