よんすうパズルになれてきましたか?
ひらめきでわかるときは楽しいが、むずかしい数の列だとチョットたいへん。
最後の計算から考え始めて、すぐにわかれば、大進歩。
少しむずかしい問題も解けるようになった。
でも、かなり難しい問題は、最後の計算から、場合分けをしながら、
順番に考えるのはたいへんめんどう。
めんどうなときに、なんとか楽できないかと考えてきたのが人の歴史。
なんとかさぼりたい。
あきらめるのも一つの方法。
でも、あきらめたくない。ではどうする。
教えてもらうのも方法。
最近は手軽に計算機が使えるようになってきたので、
プログラムを書いて計算機に答えを教えてもらう。
プログラムを書くのもめんどうだけど、その先に楽が待っている。
実は、みんな考えることは同じ。
「テンパズル プログラム」で検索をすると、
たくさんの人がプログラムを作って公開しているようだ。
プログラムは、計算機に
どの順番でどのように調べるか
を伝える手紙。
よんすうパズルを解く方法として、
最後の計算から考える方法をすでに知っているので、
それを計算機がわかる言葉にすればよいのだが。
小学校でもプログラミングの勉強が始まったそうな。
スクラッチでプログラムを書いたことはあるかな。
最初から難しいことはできないので、
まずは、簡単だけどめんどうなことを計算機にしてもらおう。
前に、
「4桁の数は全部で1万個ありますね。
でも、その中の数字を小さい順に並べてできる数は、
なんと 715 個しかありません。」
でも、その中の数字を小さい順に並べてできる数は、
なんと 715 個しかありません。」
と書いた。
プログラミングの手始めとして、
715個であることを計算機に調べてもらおう。
準備は大人に手伝ってもらうとよい。
0. まず、計算機のブラウザで「スクラッチ」を検索するか
https://scratch.mit.edu にアクセスする。
1. 画面の左上に「作る」があるのでクリックする。
2. 画面の左上に🌐ボタンがあるのでクリックし、
「日本語」か「にほんご」を選ぶ。
「にほんご」を選ぶと、説明がひらがなやカタカナで表示される。
3. チュートリアルの画面が出ているときは「とじる」をクリック。
4. 左中頃の「へんすう」をクリック。
5. 「へんすうをつくる」をクリックし、
あたらしいへんすうのせつめい:の下の枠内に、
数をどこまで数えたか覚えておく場所の名前を書く。
自分で好きな名前をつけることができる。
たとえば、「n」 とか、「i」 とか、「カウンター」とかを書く。
長い名前だと打ち込むのが大変、
「n」 みたいに短いと後で見たときに、
何を覚えている場所かわからなくなるけど、打ち込むのは楽。
名前を打ち込んだら「すべてのスプライトよう」を選び、OKをクリック。
6. 「へんすうをつくる」をクリックし、
一の位の数の数をしまう場所のための へんすう をつくる。
「一位」でも、「n1」、「a」でも名前は自由。
十の位の数、百の位の数、千の位の数の変数も作ろう。
次の図は
千の位の数用の変数を「a」、百の位の数用の変数を「b」、
十の位の数用の変数を「c」、一の位の数用の変数を「d」
としたときの画面。
7. 画面、右上の変数をマウスでドラッグして、
千の位の a が左端に、その横にb, c, d が並ぶように、
カウンターがこれらの下にくるように移動しよう。
8. 準備ができたので、まず 0000、0001、・・・ 、 0009 を数えてみよう。
9. 出来上がったプログラムを動かすときは、緑の旗をクリックする。
このためには、左側のイベントをクリックし、「旗が押されたとき」を
真ん中の場所にドラッグし、プログラムの先頭にする。
10. 数を数えるので、カウンターの値を 0 にしておく。
このために、左側のへんすうをクリックし、「□を○にする」をドラッグし、
「旗が押されたとき」の下につける。
そして、□を「カウンター」に、○を「0」に。
11. 一の位は d に覚えさせていた。
そこで、d を 0 から 一つずつ増やしながら 9 まで、カウントしながら繰り返す。
つまり
i. まずは d を 0 とし、
ii. d が 9 より大きくなるまで以下 iii-vi を繰り返す。
iii. カウンターを一つ増やす。
iv. 動作の確認をするために、猫が鳴く。
v. 1秒待つ。
vi. d を一つ増やす。
これをスクラッチ語に翻訳すると、以下のようになる。
i. 左側の へんすう をクリックし、「□を○にする」をドラッグし、
「カウンターを 0 にする」の下につける。
そして、□を d に、○を 0 に。
ii. 左側の せいぎょ をクリックし、「<六角形> までくりかえす 」をドラッグし、
「d を 0 にする」の下につける。
そして、左側の えんざん をクリックし、緑色の六角形「○ > ○」 をドラッグし、
「<六角形> までくりかえす 」の <六角形> の位置にはめる。
この中の 黄土色の d は へんすう からドラッグ、9 は打ち込み。
iii. 左側の へんすう をクリックし、「□を○ずつかえる」をドラッグし、
「d > 9 までくりかえす」の下につける。
そして、□を カウンター に、○を 1 に。
iv. 左側の おと をクリックし、「○ のおとをならす」を
「カウンターを 1 ずつかえる」の下につける。
○には ニャー が選択されているのでそのまま。
v. 左側の せいぎょ をクリックし、「○ びょうまつ」を
「ニャー のおとをならす」の下につける。
○には 1 が入っているのでそのまま。
vi. 左側の へんすう をクリックし、「□を○ずつかえる」をドラッグし、
「1 びょうまつ」の下につける。そして、□を d に、○を 1 に。
12. 緑の旗をクリックするとプログラムが動作する。
d が 0 のとき、カウンターが 1 となり、猫が鳴き、1秒おやすみ、
d が 1 となり、カウンターが 2、猫が鳴き、1秒おやすみ
これを繰り返して
d が 9 となり、カウンターが 10、猫が鳴き、1秒おやすみ
d が 10 となったので繰り返しは終了。
カウンターに d が 0 から 9 までの個数 10 が蓄えられている。
13. つぎは、0000 から 0099 まで数えてみよう。
c を 0 から 9 まで変えて繰り返すが、
c のそれぞれの値に対して、d を 0 から 9 まで変えて繰り返す。
まず、d についての繰り返しの部分を以下のように外し、
c についての繰り返しを作る。
d の繰り返しの部分を「c を 1 ずつ変える」の上に入れる。
14. では、0000 から 9999 まで数えてみよう。これは宿題。
15. 0000 から 9999 までの数で、
右となりの数字が同じか大きくなっている数を数えるのは
どのようにしたらよいだろうか。これも宿題。
(ヒント:2桁で紙に書いてやってみる。
00, 01, ..., 09, 10, 11, 12, ..., 19, 20, 21, 22, ..., 98, 99)
よんすうパズル 今週の問題
a. 1446
b. 1578
c. 2577
d. 3789
e. 3344
f. 1356
g. 1479
h. 2344
i. 4689
j. 4478
0 件のコメント:
コメントを投稿