記数法の変換(有限小数・循環小数)(n進法→10進法、10進法→n進法)

スポンサーリンク
10進法で表された整数は,\ 10の累乗を位取りの基本としていた. \\[.2zh]  例えば,\ $\textcolor{red}{523}=\textcolor{red}{5}\times\textcolor{cyan}{10^2}+\textcolor{red}{2}\times\textcolor{cyan}{10^1}+\textcolor{red}{3}\times\textcolor{cyan}{10^0}$といった具合である. \\[1zh]  同様に,\ \textbf{\textcolor{red}{小数以下も10の累乗を位取りの基本とすることができる.}} \\[.2zh]  例えば,\ $0.482=0.4+0.08+0.002=4\times\bunsuu{1}{10^1}+8\times\bunsuu{1}{10^2}+2\times\bunsuu{1}{10^3}$である. \\[.2zh]  ここで,\ $\bunsuu{1}{10^1}=10^{-\,1},\ \bunsuu{1}{10^2}=10^{-\,2},\ \bunsuu{1}{10^3}=10^{-\,3}$という関係が成立する(数I\hspace{-.1em}Iで学習). \\[.5zh]  つまり,\ 10進法で表された0.482は次のような意味合いをもつ. \\[.5zh] \ \ \,10進法についてここまで理解できていれば後は速い.\ \ $n$進法についても同様だからである. \\[1zh]  例えば,\ 2進法で表された0.1101は次のような意味合いをもつ. \\[.5zh]  このようにして,\ $\bm{\textcolor{blue}{n進数\,→\,10進数}}$の変換ができる.\ 他の底の例も示す. \\[1zh]  では,\ $\bm{\textcolor{blue}{10進数\,→\,n進数}}$の変換はどうすればよいだろうか. \\[.5zh]  例えば,\ $0.8125_{(10)}$を2進数に変換することは,\ 次の$a_1,\ a_2,\ a_3,\ a_4$を特定することである. \\[.5zh] の部分は小数部分であり,\ 整数部分に影響しない. \\[.8zh] 2進数なので\ a_2,\ a_3,\ a_4\ は0または1であり,\ 分母の2と約分されることはないからである. \\[.2zh] また,\ 1を引いたのは小数部分のみを残してから2倍するためである.  長くなったが,\ 要は\textbf{\textcolor{magenta}{\.{小}\.{数}部分を2倍して\.{整}\.{数}部分を取り出すことを繰り返した}}だけである. \\[.2zh]  この過程を筆算表記すると以下のように簡潔になる. \\[.2zh]  繰り返しになるが,\ \textbf{\textcolor{magenta}{\.{小}\.{数}部分のみを2倍}}していることに注意して欲しい.  2を1回掛けたときの\.{整}\.{数}部分が$a_1$,\ 2回掛けたときの\.{整}\.{数}部分が$a_2,\ \cdots\cdots$である. \\[.2zh]  よって,\ 矢印のような順で整数部分の数字を並べて$\textcolor{red}{0.1101_{(2)}}$となるわけである. \\\\  2進数以外の$n$進数への変換も同様,\ 繰り返し$n$を掛ければよい. \\\\ 小数部分が0になったところで筆算は終了(有限小数の場合)であるが,\ 常に0になるとは限らない. \\[.2zh] 小数部分が0にならない場合はある周期で循環し,\ 無限小数となる. \\[.2zh] 左の0.825の例では,\ 黒丸のところの小数部分が.200で一致している. \\[.2zh] よって,\ 0.31\underline{03030303}\cdots\cdots\ のように0と3を無限に繰り返すことがわかる. \\[1zh] \bm{有限小数と循環小数は本質的に別物ではなく,\ 底で変化する.} \\[.2zh] 100.4375のように整数部分が0でない場合,\ \bm{整数部分と小数部分を別々に変換する.} 2進数0.111を10進法の小数で表せ. \\[1zh] \hspace{.5zw}(2)\ \ 2進数0.111を7進法の小数で表せ. \\[1zh] \hspace{.5zw}(3)\ \ 2進数0.1111011を8進法の小数で表せ. \\[1zh] \hspace{.5zw}(4)\ \ 8進数0.634を2進法の小数で表せ. \\ (1)\ \ \bunsuu12,\ \bunsuu14,\ \bunsuu18\,を小数にしたときの値を覚えていれば,\ 最初から小数で計算すると速い(別解1). \\[.8zh] \phantom{(1)}\ \ 一般に,\ 0.22_{(3)}=1_{(3)}-0.01_{(3)},\ \ 0.333_{(4)}=1_{(4)}-0.001_{(4)}\ のような関係が成り立つ. \\[.2zh] \phantom{(1)}\ \ 10進法における0.99=1-0.01に相当する.\ 本問はこれを利用すると簡潔に済む(別解2). \\[1zh] (2)\ \ m進数からn進数への変換は,\ 一旦\bm{10進数を経由する}のが基本となる. \\[.2zh] \phantom{(1)}\ \ 10進数から7進数への変換は筆算でもよいが,\ 別解の\bm{分数のまま変換する}方法も重要である. \\[.2zh] \phantom{(1)}\ \ むしろ,\ 先程説明したように,\ 分数での方法の方を原理で,\ これを元に筆算表記ができる. \\[.2zh] \phantom{(1)}\ \ \bm{分数を7倍し,\ 整数部分と小数部分に分けて整数部分を取り出す}ことを繰り返せばよい. \\[1zh] (3)\ \ 2^3=8より,\ 完全に計算してしまわずとも8進数に変換できる. \\[.2zh] \phantom{(1)}\ \ \bm{3桁ごとに\,\bunsuu{1}{2^3}\,やその累乗を無理矢理くくり出す}とよい. \\[.8zh] \phantom{(1)}\ \ これは,\ \bm{2進数を3桁ごとに区切って考える}ことに等しい. \\[.2zh] (4)\ \ (3)とは逆に,\ \bunsuu18=\bunsuu{1}{2^3}\,と変換し,\ さらに6,\ 3,\ 4も2の累乗数の和で表す. \10進数$\bunsuu{13}{16}$を2進法の小数で表せ. \\[1zh] \hspace{.5zw}(2)\ \ 10進数$\bunsuu{7}{8}$を3進法の小数で表せ. \\ (1)\ \ 分数を小数にして筆算で求めることもできるが,\ 16=2^4\,より分数のまま変換すると簡潔に済む. \\[.2zh] \phantom{(1)}\ \ 分子の13も2の累乗数の和で表し,\ 分数を分解すればよい. \\[1zh] (2)\ \ 8は3の累乗数ではないので,\ 3を掛けて整数部分を取り出すことを繰り返す. \\[1zh] \phantom{(1)}\ \ 参考までに,\ 分母分子をそれぞれ3進法に変換する方法を示しておいた(別解2). \\[.2zh] \phantom{(1)}\ \ 3進数の分数で分母が22のとき,\ 分子の数字が循環する循環小数となることを利用している. \\[.2zh] \phantom{(1)}\ \ 一般に,\ \bunsuu{12_{(4)}}{33_{(4)}}=0.\dot{1}\dot{2},\ \ \bunsuu{123_{(5)}}{444_{(5)}}=0.\dot{1}2\dot{3}\ のような関係が成り立つ. \\[.8zh] \phantom{(1)}\ \ これは,\ 10進法において\,\bunsuu{23}{99}=0.\dot{2}\dot{3}\,となるのと同じである. \\[.8zh] \phantom{(1)}\ \ このような法則が成り立つ理由は,\ 循環小数を分数に変換する方法を理解していればわかる. \\[1zh] \bm{10進数の既約分数がp進法で有限小数となる条件}を知識としてもっておくとよい. \\[.2zh] 10進法で有限小数となる条件はすでに別項で取り上げたが,\ それのp進法版である. \\[1zh]  整数でない10進数の既約分数を\,\bunsuu mn,\ pを素数とするとき \\[1zh]       \bm{分母nの素因数がpのみ\ \Longleftrightarrow\ 分数\,\bunsuu mn\,はp進法で有限小数} \\\\ この知識があれば,\ (1)は有限小数,\ (2)は循環小数となることが計算前にわかり,\ 見通しがよくなる. 10進数$0.\dot{7}$を3進法の小数で表せ. \\[1zh] \hspace{.5zw}(2)\ \ 3進数$0.\dot{1}\dot{2}$を10進法の小数で表せ. \\ (1)\ \ 掛け算は一の位から計算するから,\ 0.777\cdots\times3を計算して3進数に変換することはできない. \\[.2zh] \phantom{(1)}\ \ まず\bm{循環小数を分数に変換する.} \\[.2zh] \phantom{(1)}\ \ \bm{元の数を文字でおき,\ 小数部分が消えるように10^n\,倍して引く}のであった(数\text{I}). \\[.2zh] \phantom{(1)}\ \ 後は\,\bunsuu79\,を分数のまま3進数に変換する.\ 分母9=3^2\,より,\ 有限小数となる. \\\\ (2)\ \ 1\cdot\bunsuu13+2\cdot\bunsuu{1}{3^2}+1\cdot\bunsuu{1}{3^3}+2\cdot\bunsuu{1}{3^4}+\cdots\cdots\ を計算しても求まるが,\ 数\text{I\hspace{-.1em}I\hspace{-.1em}I}の極限が必要になる. \\[.8zh] \phantom{(1)}\ \ やはり,\ まず循環小数を分数に変換する必要がある. \\[.2zh] \phantom{(1)}\ \ (1)と同様に変換すればよいが,\ \bm{すべて3進数}であることに注意する. \\[.2zh] \phantom{(1)}\ \ 3進数のまま計算する方法については後に扱うので,\ ここでは一旦10進数に変換して計算する. \\[.2zh] \phantom{(1)}\ \ \bm{100_{(3)}-1_{(3)}}=9_{(10)}-1_{(10)}=8_{(10)}=2\cdot3+2=\bm{22_{(3)}}\,である. \\[.4zh] \phantom{(1)}\ \ また,\ \bunsuu{12_{(3)}}{22_{(3)}}=\bunsuu{4}{11}\,のように3進数の分母分子を10進数3で割るのは\bm{誤り}である. \\[1zh] \phantom{(1)}\ \ \bm{12_{(3)}\,と22_{(3)}\,をそれぞれ10進数に変換}すればよい.
スポンサーリンク
スポンサーリンク
高校数学A 整数
受験の月をフォローする
受験の月
タイトルとURLをコピーしました