浮動小数点数とは?
浮動小数点数とは、符号部・指数部・仮数部に分けて数値を表現する方式。桁数が限られたビット数でも非常に大きい数や小さい数を近似的に表せるが、誤差(丸め誤差)が生じることがある。
基本情報技術者試験の過去問では3回出題されています(2017年度〜2025年度)。
ふどうしょうすうてんすう
浮動小数点数の意味
符号部・指数部・仮数部に分けて数値を表現する方式。桁数が限られたビット数でも非常に大きい数や小さい数を近似的に表せるが、誤差(丸め誤差)が生じることがある。
浮動小数点数の具体例
0.1を2進数の浮動小数点数で表そうとすると正確には表現できず、繰り返し計算すると誤差が蓄積することがある。金額計算で浮動小数点を使うと1円のずれが生じる例として知られる。
浮動小数点数は試験でどう引っ掛けられる?
整数を厳密に表す「固定小数点数」と対比される。誤差が出る理由(2進数では0.1のような値を正確に表せない)を問う問題が頻出。
浮動小数点数が出た過去問
0以外の数値を浮動小数点表示で表現する場合,仮数部の最上位桁が0以外になるように,桁合わせする操作はどれか。ここで,仮数部の表現方法は,絶対値表現とする。
正解:正規化
要点:正規化=仮数の先頭を0以外に寄せ指数で調整する操作
浮動小数点数は仮数部と指数部の組で値を表すため、同じ値でも仮数と指数の取り方が何通りもあります。そこで仮数部の最上位桁が0にならないよう仮数を左へ寄せ、その分だけ指数を調整して表現を一意に決める操作を正規化と呼びます。仮数部の有効桁を最大限使えるので、精度の低下も抑えられます。
出典:平成29年度 春期 基本情報技術者試験 午前 問2(IPA)プログラムのコーディング規約に規定する事項のうち、適切なものはどれか。
正解:領域割付け関数を使用するときは、割付けができなかったときの処理を記述する。
要点:動的な領域確保は失敗しうる。失敗時処理の記述を規約化する
コーディング規約は、可読性・保守性・障害耐性を高めるために定める。動的に領域を確保する関数は確保に失敗して無効な値を返すことがあり、それを使うと異常終了につながるため、失敗時の処理を必ず書くことが求められる。変数の使い回しや浮動小数点数によるループ制御、不要な再帰は、いずれも可読性や正確性・性能を損なう。
出典:令和4年度 s 基本情報技術者試験 kamokuA 問9(IPA)浮動小数点形式で表現された数値の演算結果における丸め誤差の説明はどれか。
正解:数表現のけた数に限度があるので,最下位けたより小さい部分について四捨五入や切上げ,切捨てを行うことによって生じる誤差である。
要点:丸め誤差は有限桁ゆえの四捨五入等で生じる誤差
丸め誤差は、扱える桁数に限りがあるために、表現しきれない下位の部分を四捨五入・切上げ・切捨てで処理した結果生じる誤差である。浮動小数点数では仮数部の桁数が有限なので必ず起こりうる。桁あふれや情報落ち、桁落ちとは発生の原因が異なるので区別する。
出典:令和7年度 (公開問題) 基本情報技術者試験 kamokuA 問2(IPA)
最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。