キミのミライ発見」担当rikei-jinzai(a)kawai-juku.ac.jp※(a)を@に変更してメールをお送りください。コンピュータはcomput+erで、計算する人のことであり、それが機械に置き換わったことを見せるために、歯車式計算機を体験してもらっています。この歯車式計算機は、基本的にはブレーズ・パスカルが1645年には発明した機械式計算機「パスカリーヌ」から大幅に変わっていません。電卓が発明される昭和40年代まで、こういったものが普通に使われていました。この計算機が日本で普及したのは、足し算・引き算だけでなく、掛け算、割り算ができることが理由です。[参考サイト]タイガー計算機http://www.wizforest.com/gear/tiger/ハンドルを回すと歯車が動く。その仕組みの中にアルゴリズムが潜んでいる![掛け算]下記の動画は、実際に歯車式計算機で計算する様子です。この動画では、3×8を説明しています。https://www.youtube.com/watch?v=cQlfd7XqkrE例えば、367☓581をやってみます。367×581という計算は、置数レバーで367とセットした後に、581回ハンドルをまわして、367を581回足し算します。これは、交換法則を使って581×367と数値の順番を入れ替えたとしても、ハンドルを367回まわす必要があり大変です。そのため、歯車式計算機には桁をずらすことで、ハンドルを回す回数を少なくする機構がついています。回数表示部と結果表示部は、桁移動つまみを使って、左右に移動することができます。このとき、右に1桁ずらして計算すると、ハンドルの1まわしはもとの10回分、右に2桁ずらすと、もとの100回分まわしたことになります。左にずらすと、10分の1、100分の1となります。○367×581の計算(1)置数レバーで367をセットする。(2)ハンドルを1回まわす。(3)桁移動のつまみを1桁右に移動して「十の位」にセットし、8回まわす。(4)さらに1桁右に移動して「百の位」にセットし、5回まわす。(5)結果として1+8+5=14回と581回に比べ、ハンドルを回す回数がかなり少なくなる。この計算は先に右へ2桁移動して、百の位(5回)、十の位(8回)、一の位(1回)の順にハンドルを回して計算しても同じ結果になります。[割り算]「引き戻し法」は被除数から除数の引き算を繰り返し、引き算の結果が負になった時点(→この時「チーン」鐘が鳴ります)とで1回引多く引きすぎた、ということなので、負になっている結果に除数を再び加えて剰余を求め、引き戻した回数を1回減らして商と余りを求めるという割り算の計算方法です。この方法は、「引きすぎてしまったら(負になったら)戻す」というところがまさにアルゴリズムです。被除数から除数の引き算を繰り返し、引き算の結果が負になった時点で1回多く引き過ぎているので、負になっている結果に除数を加えて剰余を求め、引き算した回数を1回減らして商を求める割り算の計算方法。具体的な操作は以下の通り。(1)割られる数を置数レバーにセットし、1回ハンドルを回して結果表示部にコピーする。(2)回転数表示部をリセットする。(3)割る数を置数レバーでセットする。(4)ハンドルを掛け算の時と逆方向に回す(引き算する)。(5)逆方向にハンドルを回すが、回数表示部には正しく回転回数が表示される。(6)回す度に結果表示部の数値は置数レバーにセットされた数値の分だけ引かれていく。(7)0よりも小さくなった時点で、「チーン」と鐘がなる。(8)この状態は余りが0よりも小さく引きすぎの状態なので、最後にハンドルを正方向に回す。(9)この時の回数表示部の数値が商、結果表示部の数値が余りとなる。(結果表示部)掛け算と同じように桁移動つまみを利用するとハンドルを回す回数を減らすことができます。このとき、必ずもっとも大きい桁から始めます。(2)引き放し法しかし、これではハンドルを回す回数が多すぎてしまうため、桁をずらす機能と割り算を組み合わせてハンドルの回転数を最小にする「引き放し法」があります。引き放し法とは、桁をずらす機能と割り算の組みあわせを使い、ハンドルの回転数を最小にする計算方法で、割り算の答えを効率良く求めることができます。コンピュータのプログラムでも使われている手法です。この方法のアルゴリズムは、余りが正のときは引き算を、余りが負のときは足し算をするということです。計算をしてみる(1)941(割られる数)を置数レバーでセットし、1回ハンドルを回して結果表示部にコピーする。(2)回数表示部をリセットする。(3)4(割る数)を置数レバーでセットする。(4)桁を2桁右にずらし、「百の位」にセットする。以下となり、「チーン」と鐘がなる。(6)桁を1桁左にずらし、「十の位」にセットする。(7)余りの「999...99999741」(-259を表す状態「補数」)に40を加えていく(足し算の方向にハンドルを回す)。以上となり、「チーン」と鐘がなる。(8)桁を1桁左にずらし、「一の位」にセットする。(9)余りの「21」から4を引く。以下となり、「チーン」と鐘がなる。ここで、計算を打ち切る時は、余りが「999...99999997」(-3)となり負数なので、ハンドルを逆に1回回し、375と一の位の回転数からを1減らす。表示値が375となり、余りが1となる。1となり、正しく計算されている。(12)桁を調整すると小数点以下も計算できる。(動画参照)376.86→376.85=3×100-7×10+6×1-8×0.1+5×0.01=235.25これも余りが負の数のときは除数を加え、余りが正の数のときは除数を引くという2つの動作で、計算のアルゴリズムを表しています。私自身が工学部出身なので、機械は単純に面白いと考えているので、そういうことも生徒に伝わるとよいかと考えて導入しました。女子校ということもあり、進学先に工学部を選ぶことは少ないのですが、メカニカルなものに興味を持ってもらいたいという気持ちがあります。これを授業で使うと、何人かが授業後も「もっとやってみたい」と触りにきます。赤字の部分は、逆回転しているので、回転表示部は自動で「引き算」します。タイガー式の回転表示部の動き(1)百の位は0に3を足して、回転表示部の数は3(百の位)。本サイトは、経済産業省のキャリア教育事業の一環で作成した「わくわくキャッチ!」の独自コーナーとして、河合塾が作成し、運営しています。編集トップへ戻る閉じる。