目次 / 整数の性質 / 数学A

第4章 n 進法

—— 10 でまとめる約束をはずして、数の書き表し方そのものを考える ——

私たちがふだん使っている数の書き方は、「10 集まったら 1 つ上の位へ」という約束でできています。この約束を 2 や 5 に変えると、同じ数がまったく違う見た目になります。この章では、n 個ずつまとめて数を書く n 進法のしくみを学び、10 進法との行き来、小数の表し方、n 進法のままの計算までを順に見ていきます。コンピュータが使う 2 進法も、ここで正体が分かります。

問題マップ記録を読み込み中…
未回答 25× 0○ 01か月定着 0

10 でまとめるという約束

27482748 という数を、私たちは「二千七百四十八」と読みます。この 44 つの数字が何を表しているかを書き出すと

2748\displaystyle 2748=2⋅103\displaystyle {}= 2 \cdot 10^3+7⋅102\displaystyle {}+ 7 \cdot 10^2+4⋅10\displaystyle {}+ 4 \cdot 10+8\displaystyle {}+ 8

です。同じ数字 44 でも、左から2番目にあれば 700700 を、左から3番目にあれば 4040 を表します。数字の置かれた場所(位)が、そのまま 1010 の累乗を表す約束になっているのです。この書き方を位取り記数法といい、1010 個集まったら1つ上の位へ送るこの約束を10 進法といいます。

1010 でまとめる理由は、人間の指が 1010 本だからだといわれています(※諸説あり)。つまり 1010 という数に、数学的な必然性はありません。1010 のかわりに 22 や 55 でまとめる約束にしても、数の書き表し方としては何も困らないのです。この章では、そのまとめ方を変えた記数法を考えます。

なお、この分野のこれまでの章と同じく、とくに断らないかぎり文字は整数を表します。

n 進法の表し方

公式1:n 進法

nn を 22 以上の整数とする。00 以上の整数 NN を

N\displaystyle N=aknk\displaystyle {}= a_k n^k+ak−1nk−1\displaystyle {}+ a_{k-1} n^{k-1}+⋯\displaystyle {}+ \cdots+a1n\displaystyle {}+ a_1 n+a0\displaystyle {}+ a_0(0≦ai≦n−1,ak≠0)(0 \leqq a_i \leqq n - 1, \quad a_k \neq 0)

の形に表し、数字を並べて akak−1⋯a1a0a_k a_{k-1} \cdots a_1 a_0 と書く表し方を nn 進法という。nn を底といい、nn 進法で表した数であることを示すために

1011(2),\displaystyle 1011_{(2)},233(5)\displaystyle 233_{(5)}

のように右下に (n)(n) を添える。1010 進法のときは (10)(10) を省略する。nn 進法で使う数字は 0,0, 1,\ 1, …,\ \ldots, n\ n−1{}- 1 の nn 種類である。

大事なのは、nn 進法では nn 以上の数字は使わないということです。55 進法に 55 という数字は出てきません。55 が集まった時点で、1つ上の位へ送ってしまうからです。22 進法にいたっては 00 と 11 しか使いません。

鉛筆がたくさんあるとします。ふつうは 1010 本ずつ輪ゴムで束ね、1010 束ずつ箱に入れて数えます。これを「55 本ずつ束ね、55 束ずつ箱に入れる」というルールに変えてみます。6868 本の鉛筆なら、箱が 22 つ(2525 本ずつ)、束が 33 つ(55 本ずつ)、ばらが 33 本になります。このとき 6868 本を「箱 22・束 33・ばら 33」と報告するのが 55 進法で、233(5)233_{(5)} と書くわけです。束が 55 つそろってしまったら、必ず箱にしなければなりません。だから各位の数字は 44 以下になるのです。

25 のまとまり 2 つ 5 のまとまり 3 つ ばら 3 つ 68 = 2 × 5² + 3 × 5 + 3 5 進法では 233₍₅₎

底が 1010 より大きいときは、数字が足りなくなります。そこで 1616 進法では、1010 から 1515 を表すのに A,\mathrm{A}, B,\ \mathrm{B}, C,\ \mathrm{C}, D,\ \mathrm{D}, E,\ \mathrm{E}, F\ \mathrm{F} の6文字を使う約束になっています。

nn 進法とは「nn 個集まったら1つ上の位へ送る」という約束であり、位の重みが nn の累乗、使える数字が 00 から nn−1{}- 1 までになるということです。

n 進法から 10 進法へ

nn 進法で書かれた数を 1010 進法に直すのは、公式1 の右辺をそのまま計算するだけです。

公式2:n 進法を 10 進法で表す

nn 進法の数 akak−1⋯a0(n)a_k a_{k-1} \cdots a_0{}_{(n)} を 1010 進法で表すには、各位の数字に位の重み nin^i を掛けて足す。

akak−1⋯a0(n)\displaystyle a_k a_{k-1} \cdots a_0{}_{(n)}=aknk\displaystyle {}= a_k n^k+ak−1nk−1\displaystyle {}+ a_{k-1} n^{k-1}+⋯\displaystyle {}+ \cdots+a1n\displaystyle {}+ a_1 n+a0\displaystyle {}+ a_0

たとえば 1011(2)1011_{(2)} なら

1011(2)\displaystyle 1011_{(2)}=1⋅23\displaystyle {}= 1 \cdot 2^3+0⋅22\displaystyle {}+ 0 \cdot 2^2+1⋅2\displaystyle {}+ 1 \cdot 2+1\displaystyle {}+ 1=8\displaystyle {}= 8+2\displaystyle {}+ 2+1\displaystyle {}+ 1=11\displaystyle {}= 11

です。位の重みは、右から順に 1,1, n,\ n, n2,\ n^2, n3,\ n^3, …\ \ldots と並びます。22 進法なら 1,1, 2,\ 2, 4,\ 4, 8,\ 8, 16,\ 16, …\ \ldots、55 進法なら 1,1, 5,\ 5, 25,\ 25, 125,\ 125, …\ \ldots です。これを書き出してから、数字が 11 の位だけを足すようにすると、22 進法の計算は速くなります。

英語圏で使われるヤード・ポンド法では、重さを「33 ポンド 55 オンス」のように書きます。11 ポンドは 1616 オンスなので、全部オンスで言い直すと 3×163 \times 16+5{}+ 5=53{}= 53 オンスです。この計算を、私たちは何も特別なことだと思わずにやっています。nn 進法を 1010 進法に直す作業は、これとまったく同じで、位ごとにばらばらだった単位を、いちばん小さい単位にそろえているだけなのです。

nn 進法から 1010 進法への変換は、位の重み nin^i を掛けて足すだけ、つまり「単位をそろえる」計算だということです。

例題1:10 進法で表す

次の数を 1010 進法で表しなさい。

(1) 11010(2)11010_{(2)}  (2) 2304(5)2304_{(5)}  (3) 2B(16)2\mathrm{B}_{(16)}


【解答】

(1) 位の重みは右から 1,1, 2,\ 2, 4,\ 4, 8,\ 8, 16\ 16 です。数字が 11 の位は 1616 と 88 と 22 なので

11010(2)\displaystyle 11010_{(2)}=16\displaystyle {}= 16+8\displaystyle {}+ 8+2\displaystyle {}+ 2=26‾\displaystyle {}= \underline{26}

(2) 位の重みは右から 1,1, 5,\ 5, 25,\ 25, 125\ 125 です。

2304(5)\displaystyle 2304_{(5)}=2⋅125\displaystyle {}= 2 \cdot 125+3⋅25\displaystyle {}+ 3 \cdot 25+0⋅5\displaystyle {}+ 0 \cdot 5+4\displaystyle {}+ 4=250\displaystyle {}= 250+75\displaystyle {}+ 75+4\displaystyle {}+ 4=329‾\displaystyle {}= \underline{329}

(3) B\mathrm{B} は 1111 を表します。

2B(16)\displaystyle 2\mathrm{B}_{(16)}=2⋅16\displaystyle {}= 2 \cdot 16+11\displaystyle {}+ 11=43‾\displaystyle {}= \underline{43}

10 進法から n 進法へ

逆向きの変換は、割り算をくり返します。

公式3:10 進法を n 進法で表す

1010 進法の数 NN を nn 進法で表すには、NN を nn で割り、その商をまた nn で割る、という操作を商が 00 になるまでくり返す。得られた余りを下から順に読んだものが、nn 進法の表示である。

100100 を 55 進法で表してみます。

5100⋯ 0520⋯ 054⋯ 40\begin{array}{r|l r} 5 & 100 & \cdots \ 0 \\ \hline 5 & 20 & \cdots \ 0 \\ \hline 5 & 4 & \cdots \ 4 \\ \hline & 0 & \end{array}

余りを下から読んで 100100=400(5){}= 400_{(5)} です。確かめると 4⋅254 \cdot 25=100{}= 100 で、合っています。

なぜ余りを読めばよいのでしょうか。NN=aknk{}= a_k n^k+⋯{}+ \cdots+a1n{}+ a_1 n+a0{}+ a_0 のうち、a0a_0 以外の項はすべて nn の倍数です。00≦a0{}\leqq a_0≦n{}\leqq n−1{}- 1 ですから、a0a_0 は NN を nn で割った余りそのものです(第2章 公式1 の割り算の等式で、余りがただ1つに決まることを使っています)。そして商は aknk−1a_k n^{k-1}+⋯{}+ \cdots+a1{}+ a_1 なので、同じことをくり返せば、次は a1a_1 が余りとして出てきます。こうして下の位から順に数字が決まっていくのです。

3030 人のクラスを「44 人ずつの班」に分けると、77 班できて 22 人余ります。次に、その 77 班を「44 班ずつのグループ」にまとめると、11 グループできて 33 班余ります。余った人と班を並べて「グループ 11・班 33・人 22」、つまり 3030=132(4){}= 132_{(4)} です。班分けのたびに出る「余り」が、下の位から順に数字になっていきます。

けた数も、位の重みから分かります。nn 進法で kk けたということは、いちばん上の位の重みが nk−1n^{k-1} だということなので

nk−1\displaystyle n^{k-1}≦N\displaystyle {}\leqq N<nk\displaystyle {}< n^k

が成り立ちます。逆にこの不等式を満たす kk を探せば、実際に変換しなくてもけた数が分かります。

1010 進法から nn 進法への変換は nn で割り続けて余りを下から読むこと、けた数は nk−1n^{k-1}≦N{}\leqq N<nk{}< n^k で決まるということです。

例題2:n 進法で表す

(1) 100100 を 22 進法で表しなさい。

(2) 100100 を 77 進法で表しなさい。

(3) 500500 を 33 進法で表すと何けたになるか求めなさい。


【解答】

(1) 22 で割り続けます。

2100⋯ 0250⋯ 0225⋯ 1212⋯ 026⋯ 023⋯ 11\begin{array}{r|l r} 2 & 100 & \cdots \ 0 \\ \hline 2 & 50 & \cdots \ 0 \\ \hline 2 & 25 & \cdots \ 1 \\ \hline 2 & 12 & \cdots \ 0 \\ \hline 2 & 6 & \cdots \ 0 \\ \hline 2 & 3 & \cdots \ 1 \\ \hline & 1 & \end{array}

商が 11 になったら、その 11 が最上位です。余りを下から読んで 1100100(2)‾\underline{1100100_{(2)}} です。(確かめ)6464+32{}+ 32+4{}+ 4=100{}= 100 です。

(2) 100100=7⋅14{}= 7 \cdot 14+2{}+ 2,1414=7⋅2{}= 7 \cdot 2+0{}+ 0,22=7⋅0{}= 7 \cdot 0+2{}+ 2 なので、余りを下から読んで 202(7)‾\underline{202_{(7)}} です。(確かめ)2⋅492 \cdot 49+2{}+ 2=100{}= 100 です。

(3) 33 の累乗は 343^4=81{}= 81,353^5=243{}= 243,363^6=729{}= 729 です。243243≦500{}\leqq 500<729{}< 729 なので kk−1{}- 1=5{}= 5、すなわち 6 けた‾\underline{6 \ \text{けた}} です。(実際に変換すると 200112(3)200112_{(3)} で、確かに 66 けたです。)

n 進法の小数

1010 進法の小数 0.370.37 は、310\dfrac{3}{10}+7100{}+ \dfrac{7}{100} のことでした。小数点から右へ進むと、位の重みが 110\dfrac{1}{10} 倍ずつ小さくなるという約束です。nn 進法でも同じように考えます。

公式4:n 進法の小数

nn 進法の小数 0.b1b2b3⋯(n)0.b_1 b_2 b_3 \cdots{}_{(n)} は

b1n\displaystyle \dfrac{b_1}{n}+b2n2\displaystyle {}+ \dfrac{b_2}{n^2}+b3n3\displaystyle {}+ \dfrac{b_3}{n^3}+⋯\displaystyle {}+ \cdots

を表す。逆に 1010 進法の小数を nn 進法に直すには、小数部分に nn を掛け、出てきた整数部分を上の位から順に取り出す操作を、小数部分が 00 になるまでくり返す。

0.1101(2)0.1101_{(2)} を 1010 進法にしてみます。22 進法の小数の位の重みは 12\dfrac{1}{2}=0.5{}= 0.5,14\dfrac{1}{4}=0.25{}= 0.25,18\dfrac{1}{8}=0.125{}= 0.125,116\dfrac{1}{16}=0.0625{}= 0.0625 なので

0.1101(2)\displaystyle 0.1101_{(2)}=0.5\displaystyle {}= 0.5+0.25\displaystyle {}+ 0.25+0.0625\displaystyle {}+ 0.0625=0.8125\displaystyle {}= 0.8125

です。逆に 0.81250.8125 を 22 進法に直すときは、22 を掛けていきます。

0.8125×2=1.625→ 10.625×2=1.25→ 10.25×2=0.5→ 00.5×2=1.0→ 1\begin{aligned} 0.8125 \times 2 &= 1.625 &&\rightarrow\ 1 \\ 0.625 \times 2 &= 1.25 &&\rightarrow\ 1 \\ 0.25 \times 2 &= 0.5 &&\rightarrow\ 0 \\ 0.5 \times 2 &= 1.0 &&\rightarrow\ 1 \end{aligned}

整数部分を上から読んで 0.1101(2)0.1101_{(2)} に戻りました。整数部分を取り出したら、残った小数部分だけに次の 22 を掛けるのがこつです。

正方形の紙を半分に折ると 12\dfrac{1}{2}、もう一度折ると 14\dfrac{1}{4}、その次は 18\dfrac{1}{8} の大きさになります。22 進法の小数は、「半分に折った紙を使うか、使わないか」を順に 11 と 00 で答えたものです。0.81250.8125 なら、半分(0.50.5)を使い、その半分(0.250.25)も使い、次(0.1250.125)は使わず、その次(0.06250.0625)を使う、と答えていることになります。1010 進法で小数第4位まで必要だった数が、22 進法では 44 けたできれいに終わるのは、0.81250.8125 がちょうど「折った紙の組み合わせ」で作れる数だからです。

ただし、どんな小数でもぴたりと終わるわけではありません。1010 進法では有限小数の 0.10.1 も、22 進法では 0.000110011…(2)0.000110011\ldots_{(2)} と無限に続きます。どんなときに有限小数になるかは、この章の厳密定義で扱います。

nn 進法の小数も位の重みが 1n\dfrac{1}{n} 倍ずつになるだけで、整数のときと考え方は同じだということです。

例題3:小数の変換

(1) 0.203(5)0.203_{(5)} を 1010 進法で表しなさい。

(2) 0.31250.3125 を 22 進法で表しなさい。


【解答】

(1) 位の重みは 15,\dfrac{1}{5}, 125,\ \dfrac{1}{25}, 1125\ \dfrac{1}{125} です。

0.203(5)\displaystyle 0.203_{(5)}=25\displaystyle {}= \dfrac{2}{5}+025\displaystyle {}+ \dfrac{0}{25}+3125\displaystyle {}+ \dfrac{3}{125}=50+0+3125\displaystyle {}= \dfrac{50 + 0 + 3}{125}=53125\displaystyle {}= \dfrac{53}{125}=0.424‾\displaystyle {}= \underline{0.424}

(2) 小数部分に 22 を掛けていきます。

0.3125×2=0.625→ 00.625×2=1.25→ 10.25×2=0.5→ 00.5×2=1.0→ 1\begin{aligned} 0.3125 \times 2 &= 0.625 &&\rightarrow\ 0 \\ 0.625 \times 2 &= 1.25 &&\rightarrow\ 1 \\ 0.25 \times 2 &= 0.5 &&\rightarrow\ 0 \\ 0.5 \times 2 &= 1.0 &&\rightarrow\ 1 \end{aligned}

上から読んで 0.0101(2)‾\underline{0.0101_{(2)}} です。(確かめ)14\dfrac{1}{4}+116{}+ \dfrac{1}{16}=0.25{}= 0.25+0.0625{}+ 0.0625=0.3125{}= 0.3125 です。

n 進法のままで計算する

1010 進法に直さずに、nn 進法のまま筆算することもできます。やり方は 1010 進法の筆算と同じで、「くり上がる(くり下がる)タイミング」だけが変わります。

公式5:n 進法の四則計算

nn 進法の筆算では、各位の計算結果が nn 以上になったら nn を引いて上の位へ 11 くり上げ、引き算で足りないときは上の位から 11 を借りて nn を足す。

たとえば 22 進法では

1\displaystyle 1+1\displaystyle {}+ 1=10(2),\displaystyle {}= 10_{(2)},1\displaystyle 1+1\displaystyle {}+ 1+1\displaystyle {}+ 1=11(2)\displaystyle {}= 11_{(2)}

となる。

1011(2)1011_{(2)}+1101(2){}+ 1101_{(2)} を筆算でやってみます。右の位から 11+1{}+ 1=10(2){}= 10_{(2)} なので 00 を書いて 11 くり上がり、次の位は 11+0{}+ 0+1{}+ 1=10(2){}= 10_{(2)} でまた 00 を書いて 11 くり上がり……と進みます。

1011+ 110111000\begin{array}{r} 1011 \\ +\ 1101 \\ \hline 11000 \end{array}

1010 進法で確かめると 1111+13{}+ 13=24{}= 24 で、11000(2)11000_{(2)}=16{}= 16+8{}+ 8=24{}= 24 です。合っています。

車の走行距離計は、いちばん右の数字が 99 から 11 進むと 00 に戻り、左どなりの数字が 11 増えます。これが 1010 進法のくり上がりです。もし数字が 00 から 44 までしか書かれていない計器があれば、44 の次で 00 に戻って左が 11 増える、つまり 55 進法の計器になります。くり上がりの位置が変わるだけで、計算のしくみは何も変わりません。

nn 進法のまま計算するか、1010 進法に直してから計算して最後に戻すかは、どちらでもかまいません。けたの多い掛け算は、1010 進法に直したほうが速いことが多いです。

nn 進法の筆算は 1010 進法とまったく同じ手順で、くり上がりが「1010 で」ではなく「nn で」起こるだけだということです。

例題4:n 進法の計算

次の計算をしなさい。答えもその nn 進法で表すこと。

(1) 1101(2)1101_{(2)}−110(2){}- 110_{(2)}  (2) 101(2)×11(2)101_{(2)} \times 11_{(2)}  (3) 234(5)234_{(5)}+143(5){}+ 143_{(5)}


【解答】

(1) 1010 進法では 1313−6{}- 6=7{}= 7 です。77=4{}= 4+2{}+ 2+1{}+ 1 なので

111(2)‾\underline{111_{(2)}}

です。筆算でも、右から2番目の位で 00−1{}- 1 ができないので上の位から 11 を借り、10(2)10_{(2)}−1{}- 1=1{}= 1 として同じ答えになります。

(2) 11(2)11_{(2)}=1⋅2{}= 1 \cdot 2+1{}+ 1 なので、101(2)×11(2)101_{(2)} \times 11_{(2)}=101(2)×2{}= 101_{(2)} \times 2+101(2){}+ 101_{(2)} です。22 倍は 1010 進法で 1010 倍するのと同じく、右に 00 を1つ付けて 1010(2)1010_{(2)} ですから

1010(2)\displaystyle 1010_{(2)}+101(2)\displaystyle {}+ 101_{(2)}=1111(2)‾\displaystyle {}= \underline{1111_{(2)}}

です。(確かめ)5×35 \times 3=15{}= 15 で、1111(2)1111_{(2)}=8{}= 8+4{}+ 4+2{}+ 2+1{}+ 1=15{}= 15 です。

(3) 右の位から 44+3{}+ 3=7{}= 7=5{}= 5+2{}+ 2 なので 22 を書いて 11 くり上がります。次の位は 33+4{}+ 4+1{}+ 1=8{}= 8=5{}= 5+3{}+ 3 で 33 を書いて 11 くり上がり、最上位は 22+1{}+ 1+1{}+ 1=4{}= 4 です。よって

432(5)‾\underline{432_{(5)}}

です。(確かめ)234(5)234_{(5)}=69{}= 69,143(5)143_{(5)}=48{}= 48 で 6969+48{}+ 48=117{}= 117、432(5)432_{(5)}=4⋅25{}= 4 \cdot 25+3⋅5{}+ 3 \cdot 5+2{}+ 2=117{}= 117 です。

底や数字を求める問題

最後に、底 nn や各位の数字のほうが分からない問題を考えます。公式1 の形に書き下して、方程式として解くのが基本です。このとき、各位の数字は 00 以上 nn−1{}- 1 以下という条件を忘れないことが大切です。この条件が、答えを1つにしぼる決め手になります。

例題5:底や数字を求める

(1) 34(n)34_{(n)}=25{}= 25 となる底 nn を求めなさい。

(2) ある自然数を 77 進法で表すと ab(7)ab_{(7)} となり、99 進法で表すと数字の順が入れかわって ba(9)ba_{(9)} となる。この自然数を求めなさい。


【解答】

(1) 34(n)34_{(n)}=3n{}= 3n+4{}+ 4 なので

3n\displaystyle 3n+4\displaystyle {}+ 4=25,\displaystyle {}= 25,n\displaystyle n=7\displaystyle {}= 7

です。数字 44 を使っているので nn≧5{}\geqq 5 でなければなりませんが、nn=7{}= 7 はこれを満たします。よって n=7‾\underline{n = 7} です。

(2) 77 進法でも 99 進法でも数字として使えるので、aa,bb は 00 以上 66 以下の整数です。どちらも 22 けたなので aa≠0{}\neq 0,bb≠0{}\neq 0 です。

7a\displaystyle 7a+b\displaystyle {}+ b=9b\displaystyle {}= 9b+a\displaystyle {}+ a

より 6a6a=8b{}= 8b、すなわち 3a3a=4b{}= 4b です。33 と 44 は互いに素なので、aa は 44 の倍数です(第1章 厳密定義 定理5(2))。11≦a{}\leqq a≦6{}\leqq 6 より aa=4{}= 4 で、このとき bb=3{}= 3 です。求める自然数は

7⋅4\displaystyle 7 \cdot 4+3\displaystyle {}+ 3=31‾\displaystyle {}= \underline{31}

です。(確かめ)3131=9⋅3{}= 9 \cdot 3+4{}+ 4 なので 99 進法では 34(9)34_{(9)} となり、確かに数字が入れかわっています。

この章では、数の書き表し方が 1010 進法だけではないこと、そしてどの底を選んでも同じ数を過不足なく表せることを見てきました。とくに nn で割った余りが最下位の数字になるという関係は、公式3 の土台であり、次の第5章で学ぶ「余りに注目して整数を分類する」考え方へまっすぐつながります。

基礎確認問題(全5問)

まずは公式をそのまま使う、ごく簡単な問題で確認しましょう。

問1

1101(2)1101_{(2)} を 1010 進法で表しなさい。

つまずいたときは:
答えを見る
答え

1313(88+4{}+ 4+1{}+ 1)

自己採点:
記録を読み込み中…

問2

1204(5)1204_{(5)} を 1010 進法で表しなさい。

つまずいたときは:
答えを見る
答え

179179(125125+2⋅25{}+ 2 \cdot 25+4{}+ 4)

自己採点:
記録を読み込み中…

問3

5353 を 22 進法で表しなさい。

つまずいたときは:
答えを見る
答え

110101(2)110101_{(2)}(3232+16{}+ 16+4{}+ 4+1{}+ 1)

自己採点:
記録を読み込み中…

問4

200200 を 66 進法で表しなさい。

つまずいたときは:
答えを見る
答え

532(6)532_{(6)}(5⋅365 \cdot 36+3⋅6{}+ 3 \cdot 6+2{}+ 2)

自己採点:
記録を読み込み中…

問5

0.11(2)0.11_{(2)} を 1010 進法で表しなさい。

つまずいたときは:
答えを見る
答え

0.750.75(12\dfrac{1}{2}+14{}+ \dfrac{1}{4})

自己採点:
記録を読み込み中…

実践問題(全20問)

難易度マークは ★=基礎、★★=標準、★★★=入試レベルです。★から順に取り組みましょう。

問1 ★

(1) 10110(2)10110_{(2)}  (2) 3102(4)3102_{(4)}

上の (1)(2) を、それぞれ 1010 進法で表しなさい。

つまずいたときは:
答えを見る
答え

(1) 2222 (2) 210210

解説

(1) 22 進法の位の重みは右から 1,1, 2,\ 2, 4,\ 4, 8,\ 8, 16\ 16 です。数字が 11 の位を足して

10110(2)\displaystyle 10110_{(2)}=16\displaystyle {}= 16+4\displaystyle {}+ 4+2\displaystyle {}+ 2=22‾\displaystyle {}= \underline{22}

です。

(2) 44 進法の位の重みは右から 1,1, 4,\ 4, 16,\ 16, 64\ 64 です。

3102(4)\displaystyle 3102_{(4)}=3⋅64\displaystyle {}= 3 \cdot 64+1⋅16\displaystyle {}+ 1 \cdot 16+0⋅4\displaystyle {}+ 0 \cdot 4+2\displaystyle {}+ 2=192\displaystyle {}= 192+16\displaystyle {}+ 16+2\displaystyle {}+ 2=210‾\displaystyle {}= \underline{210}
自己採点:
記録を読み込み中…

問2 ★

4545 を (1) 22 進法 (2) 33 進法 で表しなさい。

つまずいたときは:
答えを見る
答え

(1) 101101(2)101101_{(2)} (2) 1200(3)1200_{(3)}

解説

(1) 22 で割り続けます。

45\displaystyle 45=2⋅22\displaystyle {}= 2 \cdot 22+1,\displaystyle {}+ 1,22\displaystyle 22=2⋅11\displaystyle {}= 2 \cdot 11+0,\displaystyle {}+ 0,11\displaystyle 11=2⋅5\displaystyle {}= 2 \cdot 5+1,\displaystyle {}+ 1,5\displaystyle 5=2⋅2\displaystyle {}= 2 \cdot 2+1,\displaystyle {}+ 1,2\displaystyle 2=2⋅1\displaystyle {}= 2 \cdot 1+0\displaystyle {}+ 0

余りを下から読み、最後の商 11 を先頭に置いて 101101(2)‾\underline{101101_{(2)}} です。(確かめ)3232+8{}+ 8+4{}+ 4+1{}+ 1=45{}= 45 です。

(2) 33 の累乗 1,1, 3,\ 3, 9,\ 9, 27\ 27 で考えると、4545=27{}= 27+18{}+ 18=1⋅27{}= 1 \cdot 27+2⋅9{}+ 2 \cdot 9 なので

1200(3)‾\underline{1200_{(3)}}

です。割り算でも 4545=3⋅15{}= 3 \cdot 15+0{}+ 0,1515=3⋅5{}= 3 \cdot 5+0{}+ 0,55=3⋅1{}= 3 \cdot 1+2{}+ 2 から同じ答えになります。

自己採点:
記録を読み込み中…

問3 ★

(1) 0.1101(2)0.1101_{(2)} を 1010 進法で表しなさい。

(2) 0.3750.375 を 22 進法で表しなさい。

つまずいたときは:
答えを見る
答え

(1) 0.81250.8125 (2) 0.011(2)0.011_{(2)}

解説

(1) 小数の位の重みは 12,\dfrac{1}{2}, 14,\ \dfrac{1}{4}, 18,\ \dfrac{1}{8}, 116\ \dfrac{1}{16} です。

0.1101(2)\displaystyle 0.1101_{(2)}=12\displaystyle {}= \dfrac{1}{2}+14\displaystyle {}+ \dfrac{1}{4}+116\displaystyle {}+ \dfrac{1}{16}=0.5\displaystyle {}= 0.5+0.25\displaystyle {}+ 0.25+0.0625\displaystyle {}+ 0.0625=0.8125‾\displaystyle {}= \underline{0.8125}

(2) 小数部分に 22 を掛け、整数部分を上から読みます。

0.375×2=0.75→ 00.75×2=1.5→ 10.5×2=1.0→ 1\begin{aligned} 0.375 \times 2 &= 0.75 &&\rightarrow\ 0 \\ 0.75 \times 2 &= 1.5 &&\rightarrow\ 1 \\ 0.5 \times 2 &= 1.0 &&\rightarrow\ 1 \end{aligned}

よって 0.011(2)‾\underline{0.011_{(2)}} です。(確かめ)14\dfrac{1}{4}+18{}+ \dfrac{1}{8}=0.375{}= 0.375 です。

自己採点:
記録を読み込み中…

問4 ★

(1) 1011(2)1011_{(2)}+111(2){}+ 111_{(2)}  (2) 10010(2)10010_{(2)}−1011(2){}- 1011_{(2)}

上の (1)(2) を計算し、答えを 22 進法で表しなさい。

つまずいたときは:
答えを見る
答え

(1) 10010(2)10010_{(2)} (2) 111(2)111_{(2)}

解説

(1) 1010 進法に直すと 1111+7{}+ 7=18{}= 18 です。1818=16{}= 16+2{}+ 2 なので

10010(2)‾\underline{10010_{(2)}}

です。筆算でも、右の位から 11+1{}+ 1=10(2){}= 10_{(2)} とくり上がりを続けると同じ答えになります。

(2) 1010 進法では 1818−11{}- 11=7{}= 7 です。77=4{}= 4+2{}+ 2+1{}+ 1 なので

111(2)‾\underline{111_{(2)}}

です。(1) の逆の計算になっていることからも確かめられます。

自己採点:
記録を読み込み中…

問5 ★

1101(2)×101(2)1101_{(2)} \times 101_{(2)} を計算し、答えを 22 進法で表しなさい。

つまずいたときは:
答えを見る
答え

1000001(2)1000001_{(2)}

解説

101(2)101_{(2)}=4{}= 4+1{}+ 1 なので

1101(2)×101(2)\displaystyle 1101_{(2)} \times 101_{(2)}=1101(2)×4\displaystyle {}= 1101_{(2)} \times 4+1101(2)\displaystyle {}+ 1101_{(2)}

です。22 進法で 44 倍することは、右に 00 を2つ付けることなので 110100(2)110100_{(2)} です。これに 1101(2)1101_{(2)} を足して

110100(2)\displaystyle 110100_{(2)}+1101(2)\displaystyle {}+ 1101_{(2)}=1000001(2)‾\displaystyle {}= \underline{1000001_{(2)}}

です。(確かめ)1010 進法では 13×513 \times 5=65{}= 65 で、1000001(2)1000001_{(2)}=64{}= 64+1{}+ 1=65{}= 65 です。

自己採点:
記録を読み込み中…

問6 ★

10001000 を 22 進法、55 進法で表すと、それぞれ何けたになるか求めなさい。

つまずいたときは:
答えを見る
答え

22 進法で 1010 けた、55 進法で 55 けた

解説

nn 進法で kk けたであることは nk−1n^{k-1}≦N{}\leqq N<nk{}< n^k と同じです。

22 進法:292^9=512{}= 512,2102^{10}=1024{}= 1024 で 512512≦1000{}\leqq 1000<1024{}< 1024 なので kk−1{}- 1=9{}= 9、すなわち 10 けた‾\underline{10 \ \text{けた}} です。

55 進法:545^4=625{}= 625,555^5=3125{}= 3125 で 625625≦1000{}\leqq 1000<3125{}< 3125 なので kk−1{}- 1=4{}= 4、すなわち 5 けた‾\underline{5 \ \text{けた}} です。

実際に変換すると 1111101000(2)1111101000_{(2)},13000(5)13000_{(5)} で、けた数は一致しています。

自己採点:
記録を読み込み中…

問7 ★

132(n)132_{(n)}=42{}= 42 となる底 nn を求めなさい。

つまずいたときは:
答えを見る
答え

nn=5{}= 5

解説

132(n)132_{(n)}=n2{}= n^2+3n{}+ 3n+2{}+ 2 なので

n2\displaystyle n^2+3n\displaystyle {}+ 3n+2\displaystyle {}+ 2=42,\displaystyle {}= 42,n2\displaystyle n^2+3n\displaystyle {}+ 3n−40\displaystyle {}- 40=0,\displaystyle {}= 0,(n+8)(n−5)\displaystyle (n + 8)(n - 5)=0\displaystyle {}= 0

です。nn は 22 以上の整数なので nn=5{}= 5 です。数字 33 を使っているので nn≧4{}\geqq 4 が必要ですが、これも満たしています。よって

n=5‾\underline{n = 5}

です。(確かめ)132(5)132_{(5)}=25{}= 25+15{}+ 15+2{}+ 2=42{}= 42 です。

自己採点:
記録を読み込み中…

問8 ★

44 進法で表すと 33 けたになる自然数は何個あるか求めなさい。また、そのうち最大のものを 1010 進法で表しなさい。

つまずいたときは:
答えを見る
答え

4848 個、最大は 6363

解説

44 進法で 33 けたになる条件は

42\displaystyle 4^2≦N\displaystyle {}\leqq N<43,\displaystyle {}< 4^3,すなわち\displaystyle \text{すなわち}16\displaystyle 16≦N\displaystyle {}\leqq N≦63\displaystyle {}\leqq 63

です。個数は 6363−16{}- 16+1{}+ 1=48 個‾{}= \underline{48 \ \text{個}} で、最大のものは 63‾\underline{63} です。

最大のものは、すべての位の数字が 33 である 333(4)333_{(4)}=3⋅16{}= 3 \cdot 16+3⋅4{}+ 3 \cdot 4+3{}+ 3=63{}= 63 にあたります。

自己採点:
記録を読み込み中…

問9 ★★

(1) 110101110(2)110101110_{(2)} を 88 進法で表しなさい。

(2) 2F(16)2\mathrm{F}_{(16)} を 22 進法で表しなさい。

つまずいたときは:
答えを見る
答え

(1) 656(8)656_{(8)} (2) 101111(2)101111_{(2)}

解説

88=23{}= 2^3 なので、22 進法の数字を下から 33 けたずつ区切ると、その区切りがそのまま 88 進法の各位になります。232^3 ごとに位が上がることと、33 けたで表せる数がちょうど 00 から 77 であることが理由です。

(1) 下から 33 けたずつ区切ると 110∣101∣110110 \mid 101 \mid 110 で、それぞれ 6,6, 5,\ 5, 6\ 6 なので

656(8)‾\underline{656_{(8)}}

です。(確かめ)110101110(2)110101110_{(2)}=430{}= 430,656(8)656_{(8)}=6⋅64{}= 6 \cdot 64+5⋅8{}+ 5 \cdot 8+6{}+ 6=430{}= 430 です。

(2) 1616=24{}= 2^4 なので、1616 進法の各位を 22 進法の 44 けたに置きかえます。22=0010(2){}= 0010_{(2)},F\mathrm{F}=15{}= 15=1111(2){}= 1111_{(2)} なので 00101111(2)00101111_{(2)}、先頭の 00 を取って

101111(2)‾\underline{101111_{(2)}}

です。(確かめ)2F(16)2\mathrm{F}_{(16)}=32{}= 32+15{}+ 15=47{}= 47,101111(2)101111_{(2)}=32{}= 32+8{}+ 8+4{}+ 4+2{}+ 2+1{}+ 1=47{}= 47 です。

自己採点:
記録を読み込み中…

問10 ★★

aa,bb を 00 以上 44 以下の整数とする。55 進法で 2a1b(5)2a1b_{(5)} と表される数が 1010 進法で 306306 であるとき、aa,bb の値を求めなさい。

つまずいたときは:
答えを見る
答え

aa=2{}= 2,bb=1{}= 1

解説

55 進法の位の重みは右から 1,1, 5,\ 5, 25,\ 25, 125\ 125 なので

2⋅125\displaystyle 2 \cdot 125+a⋅25\displaystyle {}+ a \cdot 25+1⋅5\displaystyle {}+ 1 \cdot 5+b\displaystyle {}+ b=306\displaystyle {}= 306

です。整理すると

25a\displaystyle 25a+b\displaystyle {}+ b=306\displaystyle {}= 306−255\displaystyle {}- 255=51\displaystyle {}= 51

です。00≦b{}\leqq b≦4{}\leqq 4 なので、25a25a は 4747 以上 5151 以下です。これを満たす整数 aa は aa=2{}= 2 だけで、このとき bb=51{}= 51−50{}- 50=1{}= 1 です。よって

a=2,‾\displaystyle \underline{\rule[-0.1944em]{0em}{0.8889em}a = 2,} b=1‾\displaystyle \underline{\rule[-0.1944em]{0em}{0.8889em}\ b = 1}

です。(確かめ)2211(5)2211_{(5)}=250{}= 250+50{}+ 50+5{}+ 5+1{}+ 1=306{}= 306 です。

自己採点:
記録を読み込み中…

問11 ★★

自然数 NN を 44 進法で表すと 44 けたになり、55 進法で表すと 33 けたになる。このような NN の範囲を 1010 進法で表し、NN は何個あるか求めなさい。

つまずいたときは:
答えを見る
答え

6464≦N{}\leqq N≦124{}\leqq 124、6161 個

解説

44 進法で 44 けたであることから

43\displaystyle 4^3≦N\displaystyle {}\leqq N<44,\displaystyle {}< 4^4,64\displaystyle 64≦N\displaystyle {}\leqq N≦255\displaystyle {}\leqq 255

です。55 進法で 33 けたであることから

52\displaystyle 5^2≦N\displaystyle {}\leqq N<53,\displaystyle {}< 5^3,25\displaystyle 25≦N\displaystyle {}\leqq N≦124\displaystyle {}\leqq 124

です。両方を満たすのは

64≦N≦124‾\underline{64 \leqq N \leqq 124}

で、個数は 124124−64{}- 64+1{}+ 1=61 個‾{}= \underline{61 \ \text{個}} です。

自己採点:
記録を読み込み中…

問12 ★★

720720 を 66 進法で表すと、末尾に 00 が何個並ぶか求めなさい。

つまずいたときは:
答えを見る
答え

22 個

解説

66 進法で表したとき末尾に 00 が kk 個並ぶことは、720720 が 6k6^k で割り切れて 6k+16^{k+1} では割り切れないことと同じです。末尾の kk 個が 00 なら、その数は 6k6^k でくくれるからです。

720720=24⋅32⋅5{}= 2^4 \cdot 3^2 \cdot 5,6k6^k=2k⋅3k{}= 2^k \cdot 3^k なので、6k6^k で割り切れる条件は kk≦4{}\leqq 4 かつ kk≦2{}\leqq 2、すなわち kk≦2{}\leqq 2 です。よって末尾の 00 は

2 個‾\underline{2 \ \text{個}}

です。(確かめ)720720=3⋅216{}= 3 \cdot 216+2⋅36{}+ 2 \cdot 36=3200(6){}= 3200_{(6)} で、末尾に 00 が 22 個並んでいます。

自己採点:
記録を読み込み中…

問13 ★★

77 進法で abc(7)abc_{(7)} と表される自然数が 66 の倍数であることと、aa+b{}+ b+c{}+ c が 66 の倍数であることは同じであることを示しなさい。

つまずいたときは:
答えを見る
答え

49a49a+7b{}+ 7b+c{}+ c=6(8a+b){}= 6(8a + b)+(a+b+c){}+ (a + b + c) より、一方が 66 の倍数なら他方も 66 の倍数になる。

解説

NN=abc(7){}= abc_{(7)}=49a{}= 49a+7b{}+ 7b+c{}+ c です。4949=48{}= 48+1{}+ 1,77=6{}= 6+1{}+ 1 なので

N\displaystyle N=(48a+6b)\displaystyle {}= (48a + 6b)+(a+b+c)\displaystyle {}+ (a + b + c)=6(8a+b)\displaystyle {}= 6(8a + b)+(a+b+c)\displaystyle {}+ (a + b + c)

と書けます。6(8a+b)6(8a + b) は 66 の倍数です。

NN が 66 の倍数なら、aa+b{}+ b+c{}+ c=N{}= N−6(8a+b){}- 6(8a + b) は 66 の倍数の差なので 66 の倍数です。逆に aa+b{}+ b+c{}+ c が 66 の倍数なら、NN は 66 の倍数どうしの和なので 66 の倍数です(第1章 公式1)。よって2つの条件は同じです。(証明終)

これは 1010 進法における「各位の数字の和が 99 の倍数なら 99 の倍数」(第1章 公式2)の 77 進法版です。nn 進法では、nn−1{}- 1 の倍数の判定が各位の数字の和でできます。

自己採点:
記録を読み込み中…

問14 ★★

(1) 13\dfrac{1}{3} を 66 進法の小数で表しなさい。

(2) 14\dfrac{1}{4} は 22 進法では有限小数になるが、33 進法では有限小数にならないことを示しなさい。

つまずいたときは:
答えを見る
答え

(1) 0.2(6)0.2_{(6)} (2) 14\dfrac{1}{4}=0.01(2){}= 0.01_{(2)}。33 進法で有限小数なら 3m3^m=4A{}= 4A となり、奇数が偶数に等しくなって矛盾する。

解説

(1) 66 進法の小数第1位の重みは 16\dfrac{1}{6} です。13\dfrac{1}{3}=26{}= \dfrac{2}{6} なので

0.2(6)‾\underline{0.2_{(6)}}

です。

(2) 22 進法の小数第2位の重みは 14\dfrac{1}{4} なので、14\dfrac{1}{4}=0.01(2){}= 0.01_{(2)} で有限小数です。

33 進法で有限小数になったとすると、小数第 mm 位までで終わるので、ある整数 AA を用いて

14\displaystyle \dfrac{1}{4}=A3m\displaystyle {}= \dfrac{A}{3^m}

と書けます。分母をはらうと 3m3^m=4A{}= 4A です。左辺 3m3^m は奇数、右辺 4A4A は偶数なので、これは成り立ちません。よって 14\dfrac{1}{4} は 33 進法では有限小数になりません。(証明終)

実際に計算すると 14\dfrac{1}{4}=0.020202⋯(3){}= 0.020202\cdots_{(3)} と、0202 がくり返し現れます。

自己採点:
記録を読み込み中…

問15 ★★

(1) 346(7)346_{(7)}+265(7){}+ 265_{(7)}  (2) 346(7)346_{(7)}−265(7){}- 265_{(7)}

上の (1)(2) を計算し、答えを 77 進法で表しなさい。

つまずいたときは:
答えを見る
答え

(1) 644(7)644_{(7)} (2) 51(7)51_{(7)}

解説

1010 進法に直すと 346(7)346_{(7)}=3⋅49{}= 3 \cdot 49+4⋅7{}+ 4 \cdot 7+6{}+ 6=181{}= 181,265(7)265_{(7)}=2⋅49{}= 2 \cdot 49+6⋅7{}+ 6 \cdot 7+5{}+ 5=145{}= 145 です。

(1) 181181+145{}+ 145=326{}= 326 です。326326=6⋅49{}= 6 \cdot 49+32{}+ 32=6⋅49{}= 6 \cdot 49+4⋅7{}+ 4 \cdot 7+4{}+ 4 なので

644(7)‾\underline{644_{(7)}}

です。77 進法のまま筆算しても、右の位から 66+5{}+ 5=11{}= 11=7{}= 7+4{}+ 4 で 44 を書いて 11 くり上がり、44+6{}+ 6+1{}+ 1=11{}= 11=7{}= 7+4{}+ 4 で 44 を書いて 11 くり上がり、33+2{}+ 2+1{}+ 1=6{}= 6 となって同じ答えです。

(2) 181181−145{}- 145=36{}= 36=5⋅7{}= 5 \cdot 7+1{}+ 1 なので

51(7)‾\underline{51_{(7)}}

です。

自己採点:
記録を読み込み中…

問16 ★★

ある自然数を nn 進法で表すと 32(n)32_{(n)} となり、(n+2)(n + 2) 進法で表すと 23(n+2)23_{(n+2)} となる。nn とこの自然数を求めなさい。

つまずいたときは:
答えを見る
答え

nn=5{}= 5、自然数は 1717

解説

32(n)32_{(n)}=3n{}= 3n+2{}+ 2,23(n+2)23_{(n+2)}=2(n+2){}= 2(n + 2)+3{}+ 3=2n{}= 2n+7{}+ 7 です。同じ数なので

3n\displaystyle 3n+2\displaystyle {}+ 2=2n\displaystyle {}= 2n+7,\displaystyle {}+ 7,n\displaystyle n=5\displaystyle {}= 5

です。数字の条件も確かめます。nn 進法で数字 33 を使うので nn≧4{}\geqq 4、(n+2)(n + 2) 進法で数字 33 を使うので nn+2{}+ 2≧4{}\geqq 4 ですが、nn=5{}= 5 はどちらも満たします。求める自然数は

3⋅5\displaystyle 3 \cdot 5+2\displaystyle {}+ 2=17‾\displaystyle {}= \underline{17}(n=5‾)\displaystyle (n = \underline{5})

です。(確かめ)1717=2⋅7{}= 2 \cdot 7+3{}+ 3 なので 77 進法では 23(7)23_{(7)} です。

自己採点:
記録を読み込み中…

問17 ★★★

11 から 6363 までの自然数を 11 つ選んでもらう手品を考える。66 枚のカードを用意し、kk 枚目(kk=1,{}= 1, 2,\ 2, …,\ \ldots, 6\ 6)のカードには、22 進法で表したときに 2k−12^{k-1} の位の数字が 11 であるような数をすべて書いておく。

(1) 選ばれた数が書かれているカードをすべて教えてもらえば、その数が必ず分かる理由を説明しなさい。

(2) 11 枚目・33 枚目・66 枚目の 33 枚だけに書かれている数を求めなさい。

つまずいたときは:
答えを見る
答え

(1) 各数の 22 進法表示はただ1通りなので、数字が 11 である位の重みを足せば元の数に戻るから。 (2) 3737

解説

(1) 11 から 6363 までの自然数は、22 進法では 66 けた以内で表せます(6363=111111(2){}= 111111_{(2)})。しかも、その表し方はただ1通りです(厳密定義 定理1)。

選ばれた数を NN、その 22 進法表示を a5a4a3a2a1a0(2)a_5 a_4 a_3 a_2 a_1 a_0{}_{(2)} とすると

N\displaystyle N=a5⋅32\displaystyle {}= a_5 \cdot 32+a4⋅16\displaystyle {}+ a_4 \cdot 16+a3⋅8\displaystyle {}+ a_3 \cdot 8+a2⋅4\displaystyle {}+ a_2 \cdot 4+a1⋅2\displaystyle {}+ a_1 \cdot 2+a0\displaystyle {}+ a_0

です。kk 枚目のカードに NN が書かれていることと ak−1a_{k-1}=1{}= 1 であることは同じなので、「どのカードに書かれているか」を聞くことは、22 進法の各位の数字をすべて聞くことにほかなりません。あとは、そのカードの番号 kk に対応する重み 2k−12^{k-1} を足し合わせれば NN が求まります。表し方がただ1通りだから、別の数と取り違えることもありません。

(2) 11 枚目・33 枚目・66 枚目の重みは 202^0=1{}= 1,222^2=4{}= 4,252^5=32{}= 32 です。ほかのカードには書かれていないので、残りの位の数字は 00 です。よって

1\displaystyle 1+4\displaystyle {}+ 4+32\displaystyle {}+ 32=37‾\displaystyle {}= \underline{37}

です。(確かめ)3737=100101(2){}= 100101_{(2)} で、数字が 11 なのは 1,1, 3,\ 3, 6\ 6 番目の位だけです。

自己採点:
記録を読み込み中…

問18 ★★★

自然数 NN を 22 進法で表すと kk けたになる。NN を 44 進法で表すと何けたになるか、kk を用いて表しなさい。

つまずいたときは:
答えを見る
答え

kk が偶数のとき k2\dfrac{k}{2} けた、kk が奇数のとき k+12\dfrac{k + 1}{2} けた

解説

22 進法で kk けたであることから

2k−1\displaystyle 2^{k-1}≦N\displaystyle {}\leqq N<2k\displaystyle {}< 2^k

です。44 進法で mm けたであるとすると 4m−14^{m-1}≦N{}\leqq N<4m{}< 4^m で、44=22{}= 2^2 より

22m−2\displaystyle 2^{2m-2}≦N\displaystyle {}\leqq N<22m\displaystyle {}< 2^{2m}

です。NN の 22 進法のけた数は、NN が 22m−22^{2m-2} 以上 22m2^{2m} 未満であることから 2m2m−1{}- 1 か 2m2m のどちらかです。つまり

k\displaystyle k=2m\displaystyle {}= 2m−1\displaystyle {}- 1または\displaystyle \text{または}k\displaystyle k=2m\displaystyle {}= 2m

です。kk が奇数なら mm=k+12{}= \dfrac{k + 1}{2}、偶数なら mm=k2{}= \dfrac{k}{2} です。よって、44 進法のけた数は次のとおりです。

  • kk が偶数のとき k2 けた‾\underline{\dfrac{k}{2} \text{ けた}}
  • kk が奇数のとき k+12 けた‾\underline{\dfrac{k + 1}{2} \text{ けた}}

これは、22 進法の数字を下から 22 けたずつ区切ると 44 進法になる(問9 と同じ理由)ことからも分かります。kk けたを下から 22 けたずつ区切ると、kk が偶数ならちょうど k2\dfrac{k}{2} 個、奇数なら最後に 11 けた余るので k+12\dfrac{k + 1}{2} 個の区切りができます。

自己採点:
記録を読み込み中…

問19 ★★★

11 から 100100 までの自然数のうち、33 進法で表したときに数字 22 が現れないものは何個あるか求めなさい。

つまずいたときは:
答えを見る
答え

2323 個

解説

100100=10201(3){}= 10201_{(3)} なので、11 から 100100 までの数は 33 進法で 55 けた以内です。数字が 00 と 11 しか現れないということは、各位の数字 cic_i が 00 か 11 で

N\displaystyle N=c4⋅81\displaystyle {}= c_4 \cdot 81+c3⋅27\displaystyle {}+ c_3 \cdot 27+c2⋅9\displaystyle {}+ c_2 \cdot 9+c1⋅3\displaystyle {}+ c_1 \cdot 3+c0\displaystyle {}+ c_0

と書けること、つまり NN が 1,1, 3,\ 3, 9,\ 9, 27,\ 27, 81\ 81 の中からいくつかを選んで足した数であることと同じです。33 進法の表し方はただ1通りなので(厳密定義 定理1)、選び方が違えば和も違います。

選び方は、11 つも選ばない場合を除いて 252^5−1{}- 1=31{}= 31 通りあります。このうち 100100 を超えるものを除きます。

  • 8181 を選ばないとき:和は最大でも 11+3{}+ 3+9{}+ 9+27{}+ 27=40{}= 40 なので、1515 通りすべてが 100100 以下です。
  • 8181 を選ぶとき:残りの和が 1919 以下である必要があります。2727 を選ぶと残りの和は 2727 以上になって条件を満たしません。2727 を選ばなければ残りの和は最大 11+3{}+ 3+9{}+ 9=13{}= 13 で条件を満たすので、{1, 3, 9}\{1,\ 3,\ 9\} の選び方 232^3=8{}= 8 通りがすべて条件を満たします。

よって 1515+8{}+ 8=23 個‾{}= \underline{23 \ \text{個}} です。

(具体的には 1,1, 3,\ 3, 4,\ 4, 9,\ 9, 10,\ 10, 12,\ 12, 13,\ 13, 27,\ 27, 28,\ 28, 30,\ 30, 31,\ 31, 36,\ 36, 37,\ 37, 39,\ 39, 40,\ 40, 81,\ 81, 82,\ 82, 84,\ 84, 85,\ 85, 90,\ 90, 91,\ 91, 93,\ 93, 94\ 94 の 2323 個です。)

自己採点:
記録を読み込み中…

問20 ★★★

ある自然数を 55 進法で表すと 33 けたの abc(5)abc_{(5)} となり、77 進法で表すと数字の順が逆になった cba(7)cba_{(7)} となる。この自然数をすべて求めなさい。

つまずいたときは:
答えを見る
答え

5151 と 102102

解説

55 進法の数字なので aa,bb,cc は 00 以上 44 以下の整数で、どちらも 33 けたなので最上位の数字は 00 でなく、aa≠0{}\neq 0,cc≠0{}\neq 0 です。

25a\displaystyle 25a+5b\displaystyle {}+ 5b+c\displaystyle {}+ c=49c\displaystyle {}= 49c+7b\displaystyle {}+ 7b+a\displaystyle {}+ a

整理すると 24a24a−2b{}- 2b−48c{}- 48c=0{}= 0、両辺を 22 で割って

12a\displaystyle 12a−b\displaystyle {}- b−24c\displaystyle {}- 24c=0,\displaystyle {}= 0,b\displaystyle b=12(a−2c)\displaystyle {}= 12(a - 2c)

です。00≦b{}\leqq b≦4{}\leqq 4 で、12(a−2c)12(a - 2c) は 1212 の倍数なので bb=0{}= 0 です。このとき aa=2c{}= 2c です。

  • cc=1{}= 1 のとき aa=2{}= 2 で、201(5)201_{(5)}=50{}= 50+1{}+ 1=51{}= 51
  • cc=2{}= 2 のとき aa=4{}= 4 で、402(5)402_{(5)}=100{}= 100+2{}+ 2=102{}= 102
  • cc=3{}= 3 のとき aa=6{}= 6 となり、aa≦4{}\leqq 4 に反するので不適

よって求める自然数は

51 と 102‾\underline{51 \ \text{と} \ 102}

です。(確かめ)5151=49{}= 49+2{}+ 2=102(7){}= 102_{(7)}、102102=2⋅49{}= 2 \cdot 49+4{}+ 4=204(7){}= 204_{(7)} で、どちらも数字の順が逆になっています。

自己採点:
記録を読み込み中…

数学小話コーナー

0 と 1 だけの世界——ライプニッツと 2 進法

微分積分の記号 dxdx や ∫\int を作ったドイツの数学者ライプニッツは、17031703 年に「二進法算術の解説」という論文を発表しました。00 と 11 だけですべての数を書き表し、足し算も掛け算もできることを示した文章です。

ライプニッツがこの記数法に強くひかれたのには、数学以外の理由もありました。彼は 00 を「無」、11 を「神」になぞらえ、無から万物が作られることの象徴だと考えていたのです。さらに、中国にいた宣教師ブーヴェから送られてきた『易経』の六十四卦の図を見て、陰(−−--)と陽(−-)の組み合わせが、ちょうど 22 進法の 00 と 11 の並びと一致していることに気づき、たいへん興奮したと伝えられます(※古代中国側に 22 進法の意識があったかどうかは諸説あり、ライプニッツの解釈だという見方が有力です)。

22 進法が実用になるのは、それから 200200 年以上あとのことです。電気回路のスイッチには「流れている・流れていない」の 22 つの状態しかありません。この 22 状態に 11 と 00 を割り当てれば、数がそのまま回路で表せます。11 けた分を 11 ビット、88 ビットをまとめて 11 バイトと呼びます。88 けたの 22 進法で表せる数は 282^8=256{}= 256 通りなので、11 バイトで 00 から 255255 までが表せます。

ただし 22 進法は、人間が読むにはけたが長すぎます。そこで登場するのが 1616 進法です。1616=24{}= 2^4 なので、22 進法の 44 けたが 1616 進法の 11 けたにぴたりと対応します(実践問題 j09 でやった変換です)。ウェブページで色を指定するときの #FF0000(赤)や #00FF00(緑)は 1616 進法で、赤・緑・青の強さをそれぞれ 0000 から FF\mathrm{FF}(=255= 255)の 22 けたで表したものです。11 バイトがちょうど 1616 進法の 22 けたになる、という関係がここでも効いています。

豆知識

パソコンの世界で 11 キロバイトが 10001000 バイトでなく 10241024 バイトとされてきたのは、10241024=210{}= 2^{10} だからです。22 進法で数えると 1010 けた上がるごとにきりのよい数になるので、10001000 のかわりに 10241024 をまとめの単位にしたほうが都合がよかったのです。ただし混乱も多く、いまは 10241024 バイトを「キビバイト(KiB)」と呼び分ける規格も定められています。

フランス語の 90 は「4 つの 20 と 10」——ことばに残る n 進法

フランス語で 9090 は quatre-vingt-dix といいます。直訳すると「44 個の 2020 と 1010」、つまり 4×204 \times 20+10{}+ 10=90{}= 90 です。8080 は quatre-vingts(44 個の 2020)で、7070 にいたっては soixante-dix(6060 と 1010)です。1010 進法の国のことばに、2020 進法のかけらが化石のように残っているのです。ケルト系の言語の影響ではないかといわれています(※由来には諸説あり)。

デンマーク語はもっと徹底していて、9090 は halvfems、もとをたどれば「44 個半の 2020」です。4.5×204.5 \times 20=90{}= 90 という計算が、そのまま数詞になっています。

英語にも痕跡があります。1111 と 1212 だけが eleven,twelve という特別な名前で、1313 から 1919 までは thirteen,fourteen と規則的になります。eleven と twelve は、古いゲルマン語で「(1010 から)11 余る」「22 余る」という意味だったと考えられています(※諸説あり)。1212 までをひとまとまりとする感覚があった名残です。実際、英語圏では 1212 個を 11 ダース、1212 ダース(144144=122{}= 12^2)を 11 グロスと数え、11 フィートは 1212 インチ、かつての 11 シリングは 1212 ペンスでした。

日本語も例外ではありません。「二十歳(はたち)」「三十路(みそじ)」「四十路(よそじ)」の「はた」「みそ」「よそ」は、1010 進法の中に残った古い数え方です。私たちが 1010 進法を「自然」だと感じるのは、慣れているからにすぎません。

豆知識

1212 がまとめの単位としてよく使われたのは、約数が 1,1, 2,\ 2, 3,\ 3, 4,\ 4, 6,\ 6, 12\ 12 と多く、22 等分・33 等分・44 等分・66 等分がどれもできるからです。1010 の約数は 1,1, 2,\ 2, 5,\ 5, 10\ 10 しかなく、33 等分ができません。時間や角度が 6060 を単位にしているのも同じ理由で、こちらは古代バビロニアにさかのぼります(三角比と三角関数 第5章の小話でくわしく扱いました)。数を「分けやすいかどうか」で選ぶなら、1010 は必ずしも最良ではないのです。

5 枚のカードで数を言い当てる

11 から 3131 までの数を1つ思い浮かべてもらい、55 枚のカードを順に見せて「この中にありますか」と聞くだけで、相手の考えた数をぴたりと当てる——そんな手品があります。使うのは次の 55 枚です。

  • カードA(1616 個):1,1, 3,\ 3, 5,\ 5, 7,\ 7, 9,\ 9, 11,\ 11, 13,\ 13, 15,\ 15, 17,\ 17, 19,\ 19, 21,\ 21, 23,\ 23, 25,\ 25, 27,\ 27, 29,\ 29, 31\ 31
  • カードB:2,2, 3,\ 3, 6,\ 6, 7,\ 7, 10,\ 10, 11,\ 11, 14,\ 14, 15,\ 15, 18,\ 18, 19,\ 19, 22,\ 22, 23,\ 23, 26,\ 26, 27,\ 27, 30,\ 30, 31\ 31
  • カードC:44〜7,7, 12\ 12〜15,15, 20\ 20〜23,23, 28\ 28〜3131
  • カードD:88〜15,15, 24\ 24〜3131
  • カードE:1616〜3131

答えのしくみは簡単で、「ある」と言われたカードのいちばん小さい数(1,1, 2,\ 2, 4,\ 4, 8,\ 8, 16\ 16)を足すだけです。たとえばA・C・Dの 33 枚に「ある」と答えたなら、11+4{}+ 4+8{}+ 8=13{}= 13 が相手の数です。

種明かしは、もうお分かりでしょう。カードA には 22 進法で 11 の位が 11 の数、カードB には 22 の位が 11 の数……が集めてあります。相手は 55 回の「はい・いいえ」で、自分の考えた数の 22 進法表示を 11 けたずつ教えてくれているのです。22 進法の表し方がただ1通りしかないから、答えは必ず1つに決まります(実践問題 j17 は、これを 6363 までに広げたものです)。

「はい・いいえ」を 55 回聞けば 252^5=32{}= 32 通りが区別できます。逆にいえば、3232 通りのものを言い当てるのに、質問は 55 回で足ります。情報の量を「22 進法で何けた分か」で測るという考え方は、のちに情報理論として整理され、ビットという単位になりました。この手品は、その原理をそのまま遊びにしたものなのです。

豆知識

同じ原理で作られた有名なパズルに「ハノイの塔」があります。33 本の柱と nn 枚の円盤を使い、11 回に 11 枚ずつ動かして塔を移すもので、最小の手数は 2n2^n−1{}- 1 回です(第1章の実践問題 j20 で出てきた数です)。何手目にどの円盤を動かすかは、手数を 22 進法で書いたときに「下から数えて最初に 11 が現れる位」で決まることが知られています。

厳密定義(発展)

※ここは発展ページです。本文では、nn 進法の表し方を約束として受け入れ、変換のしかたを具体的な数で確かめました。ここでは「どんな数も nn 進法でただ1通りに表せる」ことをきちんと証明し、そのうえで、けた数・倍数の判定法・有限小数になる条件という3つの性質を導きます。最後に、各位の数字として −1-1 を許すという変わった記数法を扱います。

このページでは、とくに断らないかぎり文字は整数を表します。第1章・第2章の厳密定義で導入した整除の記号 b∣ab \mid a、素因数 pp の個数 vp(x)v_p(x)、および第2章 定理1(除法の定理)を使います。

n 進法表示の存在と一意性

定義1:n 進法表示

nn を 22 以上の整数とする。自然数 NN に対し、整数 kk≧0{}\geqq 0 と整数 a0,a_0, a1,\ a_1, …,\ \ldots, ak\ a_k が

N\displaystyle N=∑i=0kaini,\displaystyle {}= \sum_{i=0}^{k} a_i n^i,0\displaystyle 0≦ai\displaystyle {}\leqq a_i≦n\displaystyle {}\leqq n−1 (i=0, 1, …, k),\displaystyle {}- 1 \ (i = 0,\ 1,\ \ldots,\ k),ak\displaystyle a_k≠0\displaystyle {}\neq 0

を満たすとき、数字の並び akak−1⋯a0a_k a_{k-1} \cdots a_0 を NN の nn 進法表示といい、aia_i を nin^i の位の数字、kk+1{}+ 1 をけた数という。

定理1:n 進法表示の存在と一意性

nn を 22 以上の整数とする。どの自然数 NN に対しても、NN の nn 進法表示がただ1つ存在する。

証明 (存在)nn 進法表示をもたない自然数があるとし、そのうち最小のものを NN とする。第2章 定理1 より

N\displaystyle N=nq\displaystyle {}= nq+r,\displaystyle {}+ r,0\displaystyle 0≦r\displaystyle {}\leqq r≦n\displaystyle {}\leqq n−1\displaystyle {}- 1

を満たす整数 qq,rr がただ1組ある。qq≧0{}\geqq 0 である。

qq=0{}= 0 のときは NN=r{}= r で、11≦N{}\leqq N≦n{}\leqq n−1{}- 1 だから a0a_0=N{}= N とすればよく、表示をもつ。これは NN の取り方に反する。

qq≧1{}\geqq 1 のときは、nn≧2{}\geqq 2 より qq≦N2{}\leqq \dfrac{N}{2}<N{}< N なので、NN の最小性から qq は nn 進法表示 qq=∑i=0kbini{}= \sum_{i=0}^{k} b_i n^i(bkb_k≠0{}\neq 0)をもつ。すると

N\displaystyle N=nq\displaystyle {}= nq+r\displaystyle {}+ r=∑i=0kbini+1\displaystyle {}= \sum_{i=0}^{k} b_i n^{i+1}+r\displaystyle {}+ r

であり、最上位の数字 bkb_k は 00 でなく、どの数字も 00 以上 nn−1{}- 1 以下だから、これは NN の nn 進法表示である。やはり NN の取り方に反する。よって、表示をもたない自然数は存在しない。

(一意性)nn 進法表示を2通り以上もつ自然数があるとし、そのうち最小のものを NN とする。NN=∑i=0kaini{}= \sum_{i=0}^{k} a_i n^i=∑j=0lbjnj{}= \sum_{j=0}^{l} b_j n^j を異なる2つの表示とする。このとき

N\displaystyle N−a0\displaystyle {}- a_0=n∑i=1kaini−1,\displaystyle {}= n \sum_{i=1}^{k} a_i n^{i-1},0\displaystyle 0≦a0\displaystyle {}\leqq a_0≦n\displaystyle {}\leqq n−1\displaystyle {}- 1

だから、a0a_0 は NN を nn で割った余りである。b0b_0 も同じ理由で NN を nn で割った余りであり、第2章 定理1 の一意性から a0a_0=b0{}= b_0 である。

そこで qq=N−a0n{}= \dfrac{N - a_0}{n} とおくと、qq=∑i=1kaini−1{}= \sum_{i=1}^{k} a_i n^{i-1}=∑j=1lbjnj−1{}= \sum_{j=1}^{l} b_j n^{j-1} である。qq=0{}= 0 なら kk=l{}= l=0{}= 0 となり(kk≧1{}\geqq 1 なら aka_k≠0{}\neq 0 より qq≧1{}\geqq 1)、2つの表示は a0a_0=b0{}= b_0 の1けたで一致してしまい、異なるという仮定に反する。qq≧1{}\geqq 1 のときは qq<N{}< N であり、qq が2通りの表示をもつことになって、NN の最小性に反する。

以上より、表示を2通りもつ自然数は存在しない。(証明終)

存在の証明は、本文 公式3 の「nn で割り続けて余りを下から読む」手順そのものです。一意性の証明が使っているのは、除法の定理で余りがただ1つに決まるという1点だけで、ここが「最下位の数字は nn で割った余り」という事実の根拠になっています。

なお NN=0{}= 0 は a0a_0=0{}= 0 として 00 と書く約束にし、負の数は絶対値の表示に負号を付けて表します。

けた数

定理2:けた数

自然数 NN の nn 進法表示が kk けたであることと

nk−1\displaystyle n^{k-1}≦N\displaystyle {}\leqq N<nk\displaystyle {}< n^k

が成り立つことは同値である。

証明 (kk けたなら不等式)NN=∑i=0k−1aini{}= \sum_{i=0}^{k-1} a_i n^i,ak−1a_{k-1}≧1{}\geqq 1 とする。下からの評価は NN≧ak−1nk−1{}\geqq a_{k-1} n^{k-1}≧nk−1{}\geqq n^{k-1} である。上からの評価は、すべての aia_i が nn−1{}- 1 以下であることから

N\displaystyle N≦(n−1)(nk−1+nk−2+⋯+1)\displaystyle {}\leqq (n - 1)(n^{k-1} + n^{k-2} + \cdots + 1)=nk\displaystyle {}= n^k−1\displaystyle {}- 1<nk\displaystyle {}< n^k

である。ここで (n−1)(nk−1+⋯+n+1)(n - 1)(n^{k-1} + \cdots + n + 1)=nk{}= n^k−1{}- 1 は、展開すると中間の項が打ち消し合うことから分かる。

(不等式ならば kk けた)NN のけた数を k′k' とすると、いま示したことから nk′−1n^{k'-1}≦N{}\leqq N<nk′{}< n^{k'} である。k′k'<k{}< k なら NN<nk′{}< n^{k'}≦nk−1{}\leqq n^{k-1}≦N{}\leqq N となって矛盾し、k′k'>k{}> k なら NN≧nk′−1{}\geqq n^{k'-1}≧nk{}\geqq n^k>N{}> N となって矛盾する。よって k′k'=k{}= k である。(証明終)

けた数が kk である自然数は nkn^k−nk−1{}- n^{k-1}=(n−1)nk−1{}= (n - 1)n^{k-1} 個あります。1010 進法の 33 けたの数が 900900 個であることの一般化です。

各位の数字による倍数の判定

定理3:n − 1 と n + 1 の倍数の判定

自然数 NN の nn 進法表示を NN=∑i=0kaini{}= \sum_{i=0}^{k} a_i n^i とする。

(1) NN−∑i=0kai{}- \sum_{i=0}^{k} a_i は nn−1{}- 1 の倍数である。したがって、NN が nn−1{}- 1 の倍数であることと、各位の数字の和が nn−1{}- 1 の倍数であることは同値である。

(2) NN−∑i=0k(−1)iai{}- \sum_{i=0}^{k} (-1)^i a_i は nn+1{}+ 1 の倍数である。したがって、NN が nn+1{}+ 1 の倍数であることと、下の位から交互に足し引きした値が nn+1{}+ 1 の倍数であることは同値である。

証明 (1) 因数分解

ni\displaystyle n^i−1\displaystyle {}- 1=(n−1)(ni−1+ni−2+⋯+n+1)\displaystyle {}= (n - 1)(n^{i-1} + n^{i-2} + \cdots + n + 1)

より、nin^i−1{}- 1 は nn−1{}- 1 の倍数である(ii=0{}= 0 のときは 00 で、これも倍数である)。よって

N\displaystyle N−∑i=0kai\displaystyle {}- \sum_{i=0}^{k} a_i=∑i=0kai(ni−1)\displaystyle {}= \sum_{i=0}^{k} a_i (n^i - 1)

は nn−1{}- 1 の倍数の和であり、nn−1{}- 1 の倍数である(第1章 定理1(2))。したがって、NN と ∑ai\sum a_i の一方が nn−1{}- 1 の倍数なら、差をとって他方も nn−1{}- 1 の倍数である。

(2) xix^i−yi{}- y^i は、xx−y{}- y と xi−1x^{i-1}+xi−2y{}+ x^{i-2}y+⋯{}+ \cdots+yi−1{}+ y^{i-1} の積に因数分解できる。この等式に xx=n{}= n,yy=−1{}= -1 を代入すると

ni\displaystyle n^i−(−1)i\displaystyle {}- (-1)^i=(n+1)(ni−1−ni−2+⋯ )\displaystyle {}= (n + 1)(n^{i-1} - n^{i-2} + \cdots)

となり、nin^i−(−1)i{}- (-1)^i は nn+1{}+ 1 の倍数である。あとは (1) と同様に

N\displaystyle N−∑i=0k(−1)iai\displaystyle {}- \sum_{i=0}^{k} (-1)^i a_i=∑i=0kai{ni−(−1)i}\displaystyle {}= \sum_{i=0}^{k} a_i \{ n^i - (-1)^i \}

が nn+1{}+ 1 の倍数であることから従う。(証明終)

nn=10{}= 10 とすると、(1) は「各位の数字の和が 99 の倍数なら 99 の倍数」(第1章 公式2)、(2) は「交互に足し引きした値が 1111 の倍数なら 1111 の倍数」(第1章 実践問題 j10)そのものです。第1章では 1010=9{}= 9+1{}+ 1,1010=11{}= 11−1{}- 1 という関係から個別に示しましたが、記数法の側から見れば、どちらも底 nn の両どなりの数についての同じ1つの定理でした。

nn=7{}= 7 とすれば実践問題 j13 の 66 の倍数の判定、nn=2{}= 2 とすれば「22 進法で下から交互に足し引きした値が 33 の倍数なら 33 の倍数」になります。33 の倍数の判定は 1010 進法では簡単な規則がありませんが、22 進法では交互和で判定できるのです。

有限小数になる条件

本文 公式4 のように、nn 進法でも小数が書けます。00 以上 11 未満の数 xx が、ある mm に対して

x\displaystyle x=b1n\displaystyle {}= \dfrac{b_1}{n}+b2n2\displaystyle {}+ \dfrac{b_2}{n^2}+⋯\displaystyle {}+ \cdots+bmnm\displaystyle {}+ \dfrac{b_m}{n^m}(0≦bi≦n−1)\displaystyle (0 \leqq b_i \leqq n - 1)

と書けるとき、xx は nn 進法で有限小数であるといいます。この右辺は Anm\dfrac{A}{n^m}(AA は整数)の形に書けるので、有限小数とは「分母が nn の累乗である分数」にほかなりません。

定理4:有限小数になる条件

pq\dfrac{p}{q} を 00<pq{}< \dfrac{p}{q}<1{}< 1 を満たす既約分数(pp,qq は互いに素な自然数)とする。pq\dfrac{p}{q} が nn 進法で有限小数になるための必要十分条件は、qq のどの素因数も nn の素因数であることである。

証明 (必要性)pq\dfrac{p}{q}=Anm{}= \dfrac{A}{n^m} と書けたとする。分母をはらうと pnmp n^m=qA{}= qA で、q∣pnmq \mid p n^m である。pp と qq は互いに素なので、第1章 定理5(2) より q∣nmq \mid n^m である。qq の素因数 ℓ\ell をとると ℓ∣nm\ell \mid n^m で、ユークリッドの補題(第1章 定理5(1))をくり返し使えば ℓ∣n\ell \mid n である。

(十分性)qq のどの素因数も nn の素因数であるとする。qq の素因数を ℓ1,\ell_1, …,\ \ldots, ℓs\ \ell_s とし、mm を vℓ1(q),v_{\ell_1}(q), …,\ \ldots, vℓs(q)\ v_{\ell_s}(q) のどれよりも大きい整数にとると、各 jj について

vℓj(nm)\displaystyle v_{\ell_j}(n^m)=m vℓj(n)\displaystyle {}= m \, v_{\ell_j}(n)≧m\displaystyle {}\geqq m>vℓj(q)\displaystyle {}> v_{\ell_j}(q)

である(vℓj(n)v_{\ell_j}(n)≧1{}\geqq 1 を使った)。qq の素因数は ℓ1,\ell_1, …,\ \ldots, ℓs\ \ell_s だけなので、第1章 定理6 より q∣nmq \mid n^m である。nmn^m=qB{}= qB とおくと

pq\displaystyle \dfrac{p}{q}=pBqB\displaystyle {}= \dfrac{pB}{qB}=pBnm\displaystyle {}= \dfrac{pB}{n^m}

であり、00<pq{}< \dfrac{p}{q}<1{}< 1 より 00<pB{}< pB<nm{}< n^m である。定理2 より pBpB は nn 進法で mm けた以内に表せるので、その数字を b1,b_1, …,\ \ldots, bm\ b_m(上位を 00 で埋める)とすれば、pq\dfrac{p}{q} は nn 進法で mm けたの有限小数である。(証明終)

nn=10{}= 10 のとき、1010 の素因数は 22 と 55 なので、「既約分数が有限小数になるのは分母が 2a5b2^a 5^b の形のときに限る」という、よく知られた事実になります。13\dfrac{1}{3} が 1010 進法では 0.333⋯0.333\cdots と終わらないのに、66 進法では 0.2(6)0.2_{(6)} ときれいに終わるのは(実践問題 j14)、33 が 66 の素因数だからです。

逆に、1010 進法では有限小数の 110\dfrac{1}{10}=0.1{}= 0.1 が、22 進法では有限小数になりません。1010 の素因数 55 が 22 の素因数でないからです。コンピュータが 22 進法で小数を扱うために、0.10.1 を 33 回足しても 0.30.3 にならない、という誤差が生じるのは、このためです。有限小数にならない場合に小数がどうなるか(循環すること)は、第6章で扱います。

数字に −1 を許す——平衡三進法

最後に、各位の数字として 00 以上 nn−1{}- 1 以下という約束をはずしてみます。

定理5:平衡三進法

どの整数 NN も、cic_i∈{−1, 0, 1}{}\in \{-1,\ 0,\ 1\} である有限個の数字を用いて

N\displaystyle N=∑i=0kci3i\displaystyle {}= \sum_{i=0}^{k} c_i 3^i

の形にただ1通りに表せる(ただし NN=0{}= 0 のときはすべての cic_i を 00 とし、それ以外は ckc_k≠0{}\neq 0 とする)。

証明 (存在)∣N∣|N| についての帰納法で示す。NN=0{}= 0 は明らかである。NN≠0{}\neq 0 とし、∣N∣|N| より小さい絶対値をもつすべての整数について成り立つとする。第2章 定理1 より NN=3q{}= 3q+r{}+ r(rr=0,{}= 0, 1,\ 1, 2\ 2)と書ける。

  • rr=0{}= 0 のとき c0c_0=0{}= 0 とし、N′N'=q{}= q とおく。
  • rr=1{}= 1 のとき c0c_0=1{}= 1 とし、N′N'=q{}= q とおく。
  • rr=2{}= 2 のとき c0c_0=−1{}= -1 とし、N′N'=q{}= q+1{}+ 1 とおく。

いずれの場合も NN=3N′{}= 3N'+c0{}+ c_0 である。このとき ∣N′∣|N'|=∣N−c0∣3{}= \dfrac{|N - c_0|}{3}≦∣N∣+13{}\leqq \dfrac{|N| + 1}{3}<∣N∣{}< |N| である(∣N∣|N|≧1{}\geqq 1 より ∣N∣|N|+1{}+ 1≦2∣N∣{}\leqq 2|N|<3∣N∣{}< 3|N|)。帰納法の仮定より N′N' は表示をもつので、その数字の右に c0c_0 を付け加えれば NN の表示が得られる。

(一意性)c0c_0 は NN から決まる。実際、NN−c0{}- c_0=3N′{}= 3N' は 33 の倍数なので、NN を 33 で割った余りが 0,0, 1,\ 1, 2\ 2 のとき、c0c_0 はそれぞれ 0,0, 1,\ 1, −1{}\ -1 でなければならない(−1,-1, 0,\ 0, 1\ 1 を 33 で割った余りは 2,2, 0,\ 0, 1\ 1 とすべて異なるから)。よって c0c_0 が一致し、N′N'=N−c03{}= \dfrac{N - c_0}{3} も一致する。∣N′∣|N'|<∣N∣{}< |N| なので、∣N∣|N| についての帰納法により、残りの数字もすべて一致する。(証明終)

この表し方は平衡三進法と呼ばれます。応用として有名なのが分銅の問題です。11 g,33 g,99 g,2727 g の 44 個の分銅を、品物と反対側の皿だけでなく品物と同じ側の皿にも置いてよいことにすると、11 g から 4040 g までのどの整数の重さも量れます。cic_i=1{}= 1 が「反対側に置く」、cic_i=−1{}= -1 が「同じ側に置く」、cic_i=0{}= 0 が「使わない」にあたり、4040=1{}= 1+3{}+ 3+9{}+ 9+27{}+ 27 までのすべての整数が定理5 で表せるからです。ふつうの 22 進法の考え方(1,1, 2,\ 2, 4,\ 4, 8,\ 8, 16,\ 16, 32\ 32 の 66 個で 11 から 6363 まで)と比べると、「引く」ことを許すだけで、少ない分銅で広い範囲がまかなえるわけです。

こうして見ると、記数法の約束は「nn 個集まったら上の位へ」という1つに限りません。どんな数字の集まりを許しても、定理1 や定理5 のように「すべての数が、ただ1通りに表せる」ことさえ保証されれば、それは立派な記数法なのです。次の第5章では、この章で何度も出てきた「nn で割った余り」を主役にすえて、整数を余りで分類する方法を学びます。

この章の学習が終わったら

学習完了テストを受ける