平成20年 春期 ソフトウェア開発技術者 午前 問3

浮動小数点形式で表現されたx (x »1)に対して、をそのまま計算すると、けた落ちが生じることがある。
それを防ぐために変形した式として、適切なものはどれか。

 ア  
 イ  
 ウ  
 エ  


答え ア


解説
けた落ちが発生するのは「ほぼ等しい値の減算」のときであるから、求める式を変形して減算がない形にすればけた落ちが発生しないことになる。
問題のア〜エの選択肢で減算がないのはアなので、答えはアになる。

√1000-√999をアの式の変形を行って計算すると
 √1000-√999
 =1/(√1000+√999)
 =1/(31.6227766…+31.6069612…)
 ≒1/(31.622777+31.606961)
 =1/63.229738
 =0.0158153409…
 ≒0.015815341
となり、有効けた数は8けたのままである。


キーワード
・けた落ち

キーワードの解説
  • けた落ち
    コンピュータの有効けた数の制限から発生する誤差の一つで、ほぼ等しい値の数値の減算を行った場合、有効けた数が減少すること。
    有効けた数8けたで√1000-√999を計算すると
     √1000=31.6227766…≒31.622777
     √999=31.6069612…≒31.606961
    式の通りに計算すると
     √1001-√999=31.622777-31.606961=0.015816
    になり、有効けた数が5けたになってしまう。(けた落ちが発生した。)

もっと、「誤差」について調べてみよう。

戻る 一覧へ 次へ