私は<N進法>を教えるときには「ゼロ」という数字を考えさせるところから入ります。 ゼロが無いローマ数字や漢数字の話から位取りとは何かにつなぎ、十の位の数字や百の位の数字が何を表しているかという話から換算の計算方法の説明につなげます。 過去問は日本大学中学校の2009年(平成21年)第1回試験の大問3 です。
とは言え、最初の説明で納得した表情を見せるのは生徒の半分も居なかったりするのですが。
その「わからない。」と言っていた生徒が、(むりやりに)換算の計算方法を覚え(させられ)た後には「自分は何がわからなかったのだろう?」という顔に変わったりするのが面白いところです。
【問題】
図は、それぞれの数と対応しています。
このとき、次の各問いに答えなさい。
(1) ○●●○● は、いくつの数を表しますか。
(2) 27 を表すように図の○をぬりなさい。
【解説】
N進法の問題としては最も基本的な出題です。 受験生が戸惑うポイントがあるとすると、左から右に桁が並んでいるところですね。
(1) 2進法 → 十進法
単元の導入時の解き方としては、桁ごとに分けて掛け算をした後に足し算をします。
1 × 0 = 0
(2) × 1 = 2
(2 × 2) × 1 = 4
(2 × 2 × 2) × 0 = 0
(2 × 2 × 2 × 2) × 1 = 16
よって 0 + 2 + 4 + 0 + 16 = 22
この計算方法で引っかかって質問に来た生徒には十進法の例を挙げて、十の位の数字は 10 が何個あるのかを示し、百の位の数字は (10 × 10)が何個あるのかを示し・・・ ということを説明します。 説明しても「わかんない」って顔をする生徒には、とりあえず計算方法を覚えてしまいなさい、きちんと覚えたところで分からないって感じたら、また質問に来なさい、質問は大歓迎ですと伝えて戻します。 戻って行った生徒の中でさらに質問に来るのはかなり少ないです。
(2) 十進法 → 2進法
この換算をN進法の原理から考えさせようとするなら、「N進法で各桁の数字が表しているのは、Nの累乗が何個あるのかということだ。」という定義から次の手順になります。
手順1:目的の数に一番近いNの累乗を探す。 今回の問題の例で言えば(2 × 2 × 2 × 2 ×2) が 32 であり 27 を超えてしまうので、ひとつ小さい(2 × 2 × 2 × 2) の 16 が一番近い数です。
手順2:一番近い累乗の数で目的の数を割る。
27 ÷ 16 = 1 あまり 11
手順3:上の除算の余りをひとつ小さい累乗の数で割る。
11 ÷ 8 = 1 あまり 3
手順4:除算をNの一乗(=Nそのもの)まで繰り返す。
3 ÷ 4 = 0 あまり 3
3 ÷ 2 = 1 あまり 1
手順5:最後のあまりから始まって、各除算の商をさかのぼって並べたものが答えである。
11011
これがN進法の計算の本質に基づいた計算方法ですが、私は手書き図の右下に書いた<上下を逆にした割り算の筆算>をわりと早期から教えてしまいます。 で、「わかんない」と言って質問に来た生徒には・・・以下、同文。
N進法、その基礎になる繰り上がりの考え方はそろばんを習っていた生徒には分かり易いようです。 そろばんを使った導入の説明で、昔のそろばんと今のそろばんの違いを話すこともあります。 今のそろばんは一の珠が4個、五の珠が1個、合わせてゼロから9までしか珠の位置で表せないけれど問題なく使える・・・なんで? という質問のかたちで。
理由は 10 になったら桁が繰り上がってしまうからですが、その話の中で十進法には9までの数字しか登場しない。 2進法なら登場するのは0と1だけだ。 じゃ、4進法に登場する数字は? という質問を続けます。 この誘導で生徒の記憶の中に、登場する数字の最大値でN進法のNが推定できる、という知識を残そうとしているわけです。