2019年3月27日水曜日

エクセルはどこまで大きな数、細かい数を扱えるか?

(1) セルA1の値を 10 として、セルA2の式を「= A1*10」として、その式を下方向にコピーする。
(2) セルB1の値を 0.1 として、セルB2の式を「= B1/10」として、その式を下方向にコピーする。
(ただし、セルの表示形式は「標準」のままとする)
ところでこの場合、値が大きくなると、あるいは 0 に近い値になると、指数形式で表示される。たとえば、セルA11の「1E+11」は「1×1011」を表し、セルB10の「1E-10」は「1×10−10」を表す。

 さて、下方向にコピーしたとき、どこまで大きな数、細かい数を表せるか?
 A 列では 1×10308 までは表示できたが、それより大きくなると「エラー」表示が出た。B 列では 1×10−307 までは表示できたが、それより細かい値になると「0」と表示された。
 ところで、これは「整数値は 308 ケタまで、小数は小数点以下 307 位まで『正確に』計算できる」ということではない。エクセル内部では値を
a ×10b (ただし、1 ≦ a<10 , b は整数)
の形で表現しているが、仮数部 a と指数部 b の精度が異なるからである。いうなれば、値の正確さは a で、値の大きさは b で決まる。上の例は、正確さを調べたのではなくて、扱える数の大きさを調べたのである。前の記事 で示したように、仮数部 a が正確に計算できるのは 15 ケタ程度である。すなわちエクセルでは、必ずしも正確とは限らないが、「およそ 10−307 から 10308 程度までの計算を扱える」ということである。


 →  →  →  →  → 

0 件のコメント:

コメントを投稿