問題はこちら(画像をクリックするとPDFファイルで開きます。)
見た目に腰がひけてしまうかもしれませんが、根幹が押さえられればあっさりと終わります。
訊かれていることを表面上だけでなく、さらに踏み込んで解釈できればやるべきことが見えてくるでしょう。
(以下ネタバレ注意)
+ クリック(タップ)して続きを読む 例えば \(k=1 \ , \ 2 \ , \ 3 \ , \ 4\) に対して \(a_{k}\) が \(0 \ , \ 1 \ , \ , \ 2 \ , \ \cdots 9\) とするとき $$\displaystyle \frac{a_{1}}{10}+\displaystyle \frac{a_{2}}{10^{2}}+\displaystyle \frac{a_{3}}{10^{3}}+\displaystyle \frac{a_{4}}{10^{4}} \lt \displaystyle \frac{1}{3} \lt \displaystyle \frac{a_{1}}{10}+\displaystyle \frac{a_{2}}{10^{2}}+\displaystyle \frac{a_{3}}{10^{3}}+\displaystyle \frac{a_{4}}{10^{4}}+\displaystyle \frac{1}{10^{4}}$$ を満たす \(a_{1}\) , \(a_{2}\) , \(a_{3}\) , \(a_{4}\) を求めよ。 という問題であれば、困らないでしょう。 \(\displaystyle \frac{1}{3}=0.3333 \cdots \) なので \((a_{1} \ , \ a_{2} \ , \ a_{3} \ , \ a_{4})=(3 \ , \ 3 \ , \ 3 \ , \ 3)\) となります。 これを2進法でやろうというのが本問の背景です。 1未満の数を2進法で表すには 2をかけて整数部分を抽出する という作業をします。 今回の \(\displaystyle \frac{3}{5}\) である \(0.6\) を2進法で表してみます。 step \(0.6 \times 2=1.2\) step \(1.2-1=0.2\) step \(0.2 \times 2=0.4\) step \(0.4-0=0.4\) step \(0.4 \times 2=0.8\) step \(0.8-0=0.8\) step \(0.8 \times 2=1.6\) step \(1.6-1=0.6\) 元の \(0.6\) に戻ったので、以降同じことの繰り返しが起こります。 抽出した整数部分を上から読むと \(1 \ , \ 0 \ , \ 0 \ , \ 1\) ですから、 \(\displaystyle \frac{3}{5}=0.10011001 \cdots _{(2)}\) ということになります。 この 2倍して整数部分を抽出する という操作のイメージがつかめなかった場合、慣れ親しんでいる10進法で考えてみるといいでしょう。 10倍して整数部分を抽出する という操作をイメージするのです。 例えば、\(0.437\) は step \(0.437 \times 10=4.37\) ( 整数部分は \(4\) ) step \(4.37-4=0.37\) step \(0.37 \times 10=3.7\) ( 整数部分は \(3\) ) step \(3.7-3=0.7\) step \(0.7 \times 10=7\) ( 整数部分は \(7\) ) step \(7-7=0\) \(0\) となってしまえば以降の操作ではずっと \(0\) となりますから、ここで終了です。 抽出した \(4 \ , \ 3 \ , \ 7\) という数字を小数点以下に並べれば、当たり前ですが \(0.437\) です。 (1) に引き続き 2倍して整数部分を睨む という方針です。 そのためには対数の整数部分を把握する必要があります。 対数がどのぐらいの数かきちんと見積もれるかという基本にかかってくるでしょう。10進法なら
2進法表示の手順
12をかける
2整数部分を除く
32をかける
4整数部分を除く
52をかける
6整数部分を除く
72をかける
8整数部分を除くイメージできなかったら
110をかける
2整数部分を除く
310をかける
4整数部分を除く
510をかける
6整数部分を除く(2) について