本文へ移動

ごさ

誤差

計算結果と真の値との間に生じる差です。浮動小数点数の表現や丸め処理によって生じ、計算精度に影響を与えます。

詳しい説明

誤差とは、計算において本来得られるべき真の値と、コンピュータで計算した結果との間に生じる差のことです。コンピュータは数値を有限のビット数で表現するため、すべての数値を無限の精度で扱うことはできません。このため、小数の計算や複雑な数値演算を行う際には、どうしても厳密な値からのずれが発生します。

この誤差には、特定の桁以下を切り捨てる丸め誤差や、2進数で小数を表現する際に発生する桁落ち・情報落ちなどの種類があります。特に浮動小数点数を使った計算では、一見単純な計算でも予期せぬ値になることがあり、科学技術計算や金融システムなど、高精度が求められる領域では深刻なバグの原因となります。

試験では、計算誤差の種類を理解しているかが問われます。特に情報落ち(絶対値の大きな値と小さな値の加減算で小さい値が無視される)や桁落ち(近い値の引き算で有効桁数が減る)は頻出の論点です。これらを回避するためには、計算の順序を工夫したり、必要に応じて固定小数点数や多倍長整数を使ったりする設計知識が求められます。

試験で問われること

ITパスポート試験

  • 丸め誤差の意味と、計算結果に影響することを押さえます。
  • コンピュータが数値を近似的に扱う理由(ビットの有限性)を理解します。
  • すべての計算が完全に正確ではないという前提知識が問われます。

基本情報技術者試験

  • 情報落ちと桁落ちの発生原因と具体例が問われます。
  • 浮動小数点数の仕組み(仮数と指数)と誤差の関係が問われます。
  • 誤差を回避するアルゴリズムの選択が問われます。