読み方 : ゆうげんしょうすう
有限小数【terminating decimal】
概要

有限小数とは、0.5 や 0.25、0.125 のように、小数点以下のある桁で数字がぴったり終わる小数を指す。これに対し、桁が無限に続く小数は「無限小数」と呼ばれる。無限小数はさらに、0.333…のように同じ数字の並びが繰り返される「循環小数」と、円周率πのように規則性を持たない「非循環小数」(無理数)に分かれる。
有限小数は分数として表すこともでき、既約分数(それ以上約分できない分数)にしたときの分母が2と5の積で表せる場合に小数として有限で終わる。たとえば 1/2 は 0.5、3/4 は 0.75 となるが、1/3 は 0.333…、1/7は 0.142857…となり打ち切れない。十進法では10が2と5の積であるため、分母にそれ以外の素因数が含まれると割り切れず、循環小数となる。
IT分野では、コンピュータが数値を二進法で処理することに注意が必要である。二進法における有限小数は、既約分数の分母の素因数が2のみで構成される場合に限られる。そのため、十進法では有限小数の 0.1 を二進法に変換すると 0.0001100110011… のように特定のパターンが無限に繰り返される循環小数になる場合がある。
コンピュータは有限のビット数で数値を保持するため、二進法で無限に続く小数は途中の桁で打ち切られて格納される。この結果、十進法の0.1を繰り返し加算するような計算を行うと、打ち切られた部分の誤差が積み重なり、人間が期待する結果とわずかに異なる計算誤差(丸め誤差)が生じる。浮動小数点数を扱う多くのプログラミング言語では、この性質に起因する誤差が知られており、金額計算など十進数における厳密性が求められる処理では十進数の桁の並びで数値を表す特殊な数値データ型などを用いて対策することがある。
(2026.6.28更新)
関連用語
資格試験などの「有限小数」の出題履歴
▼ ITパスポート試験
【平24秋】 2進数に変換したとき、有限小数で表現できる10進数はどれか。