平成27年度 I-2-1

科目: 基礎科目 / 分野: 情報・論理 / 年度: 平成27年度

I-2-1 問題画像

出典:公益社団法人 日本技術士会「技術士第一次試験 過去問題」

0.01をコンピュータ内部(2進数)で表現した値を100回足しても1にならない原因の誤差として、2進数で循環小数となる数の近似による丸め誤差を選ぶ問題。

解説

この問題で問われていること

0.01を計算機内部で表現した値を100回足すと1にならなかった原因の誤差を選ぶ問題。

解き方

① 誤差の種類: 丸め誤差=有限の桁で表せず近似する誤差(繰り返すと蓄積)、桁落ち=近い数の引き算、情報落ち=大きさが極端に違う数の足し引き、オーバー/アンダーフロー=表せる範囲を超える
② 0.01は2進数で循環小数 → 近似値の誤差が100回分たまった=丸め誤差
③ ⑤

正解が正しい理由

0.01は2進数では循環小数となり、有限のビット数では正確に表現できず、近似値(丸められた値)で表される。この近似の誤差(丸め誤差)が、100回の加算で蓄積されるため、結果が正確に1にならない。したがって⑤の丸め誤差が最も適切である。

各選択肢について

覚えるべきポイント

10進数で有限小数でも、2進数では循環小数となる数(0.1、0.01など)は、計算機内部では丸められて近似値で表現される。丸め誤差は繰り返し計算で蓄積するため、等号での比較や、多数回の加算では注意が必要である。

キーワード: 丸め誤差、2進数、循環小数、浮動小数点、数値計算の誤差、情報・論理