アレアレ

お役立ち情報、お悩み解決情報を発信!

実践編

「こんなこと人間にはできません。けど、プログラミングならできます」と言う具体例

このサイトの プログラミング教育 のコーナーでは、これからプログラミングを学び始める子供を持つ親御さんに向けて、プログラミングについてわかりやすく解説しています。全くプログラミング経験のない方は、基礎編の記事から、基礎編を読んだ方は実践編の記事をご覧ください。

「こんなこと人間にはできません。けど、プログラミングならできます」と言う具体例

前回の、最初に学ぶべきプログラミング言語の選び方の記事では、「プログラムをするためのプログラミング言語はたくさん種類があるけど、その時、流行っているものをとりあえず選んで学び始めると良いよ」とお伝えしました。

そこで今回は、この記事を書いている現在、人気のあるプログラミング言語の1つであるJavaScriptを利用して、実生活の中でプログラミングが役立つ具体例をご紹介します。

ご紹介したいのは、「人間が手でやるには大変だけど、プログラミングをすれば、それが簡単に実現できる」と言う例です。

二桁の掛け算の問題をたくさん作りたい

まず自分が小学校の先生だとイメージしてください。ちょうど、子供達に二桁の掛け算を教えたところで、子供達の練習のために、小テスト用の問題を作りたい、とします。

仮に教室の生徒の数が10人で、1プリント内に10問の練習問題がある小テストを配るとしましょう。このときに1プリントの問題を全て同じにするならば、それほど苦労しません。なぜなら、二桁の掛け算を10問考えれば済むからです。

ところが、自分が教えている教室の生徒たちは、悪知恵が働き、カンニングを悪いと全く思わない生徒たちだったとしましょう。(それはそれで問題ですが。)

そのカンニング防止のために、1生徒毎に、違う問題が掲載された、小テストを作りたいとします。この場合、10生徒に10問ずつ別の問題を作ることになります。つまり、100問、異なる二桁の掛け算を考える必要があるわけです。

10問ならまだしも、100問となると、それの正しい正解つきで考えるのは、面倒な作業となりますよね。

プログラミングで簡単に作れる

この面倒な作業は、プログラミングをして、コンピューターにその問題を作らせれば、あっという間に解決できます。

例えば、次のリストは、私がその目的のプログラミングをして生成した、二桁の掛け算の100問のリストです。

(1) 22 x 55 = 1210
(2) 12 x 79 = 948
(3) 22 x 92 = 2024
(4) 68 x 56 = 3808
(5) 29 x 21 = 609
(6) 39 x 45 = 1755
(7) 25 x 96 = 2400
(8) 56 x 97 = 5432
(9) 62 x 25 = 1550
(10) 89 x 59 = 5251
(11) 50 x 84 = 4200
(12) 58 x 15 = 870
(13) 57 x 23 = 1311
(14) 50 x 23 = 1150
(15) 23 x 35 = 805
(16) 44 x 67 = 2948
(17) 55 x 27 = 1485
(18) 96 x 90 = 8640
(19) 46 x 55 = 2530
(20) 24 x 55 = 1320
(21) 69 x 60 = 4140
(22) 67 x 15 = 1005
(23) 43 x 66 = 2838
(24) 57 x 25 = 1425
(25) 85 x 25 = 2125
(26) 98 x 93 = 9114
(27) 14 x 80 = 1120
(28) 89 x 63 = 5607
(29) 50 x 72 = 3600
(30) 71 x 76 = 5396
(31) 42 x 72 = 3024
(32) 69 x 58 = 4002
(33) 79 x 54 = 4266
(34) 27 x 84 = 2268
(35) 34 x 77 = 2618
(36) 44 x 31 = 1364
(37) 25 x 40 = 1000
(38) 36 x 35 = 1260
(39) 98 x 37 = 3626
(40) 12 x 56 = 672
(41) 77 x 97 = 7469
(42) 83 x 79 = 6557
(43) 31 x 39 = 1209
(44) 63 x 22 = 1386
(45) 20 x 64 = 1280
(46) 67 x 49 = 3283
(47) 27 x 83 = 2241
(48) 83 x 22 = 1826
(49) 41 x 40 = 1640
(50) 96 x 85 = 8160
(51) 25 x 15 = 375
(52) 95 x 26 = 2470
(53) 36 x 20 = 720
(54) 67 x 75 = 5025
(55) 14 x 89 = 1246
(56) 39 x 98 = 3822
(57) 22 x 68 = 1496
(58) 39 x 77 = 3003
(59) 53 x 10 = 530
(60) 39 x 98 = 3822
(61) 71 x 22 = 1562
(62) 41 x 92 = 3772
(63) 83 x 34 = 2822
(64) 95 x 94 = 8930
(65) 21 x 93 = 1953
(66) 88 x 62 = 5456
(67) 58 x 24 = 1392
(68) 33 x 82 = 2706
(69) 52 x 38 = 1976
(70) 60 x 71 = 4260
(71) 57 x 40 = 2280
(72) 34 x 90 = 3060
(73) 81 x 41 = 3321
(74) 19 x 35 = 665
(75) 64 x 52 = 3328
(76) 52 x 43 = 2236
(77) 25 x 91 = 2275
(78) 93 x 35 = 3255
(79) 65 x 61 = 3965
(80) 85 x 79 = 6715
(81) 71 x 32 = 2272
(82) 78 x 43 = 3354
(83) 21 x 84 = 1764
(84) 65 x 94 = 6110
(85) 22 x 25 = 550
(86) 97 x 26 = 2522
(87) 56 x 94 = 5264
(88) 51 x 37 = 1887
(89) 28 x 26 = 728
(90) 68 x 23 = 1564
(91) 21 x 14 = 294
(92) 86 x 67 = 5762
(93) 82 x 31 = 2542
(94) 76 x 70 = 5320
(95) 69 x 98 = 6762
(96) 68 x 54 = 3672
(97) 32 x 44 = 1408
(98) 76 x 42 = 3192
(99) 36 x 20 = 720
(100) 17 x 16 = 272

これを印刷し、答えのところを隠してコピーを取り、10問ずつに分けて生徒に配れば、それでおしまいです。100問自分で考えるのに比べて、本当に楽チンですよね。

またプログラムから生成しているので、これが例えば1000問必要になったとしても、変わりません。100問くらいならまだ人間でも考えられますが、1000問、10000問となると、流石にきついですよね。

二桁の掛け算を100問生成するJavaScriptのプログラム

では、最後に、上の100問のリストを生成したJavaScriptのプログラムについて、ご紹介します。

次の通りです。

これは、paiza.ioという、ウェブブラウザ上でプログラムを実行できるサービスを利用しています。スマホだと画面が狭く見にくいので、パソコンで見ることをお勧めします。

今回は、簡単のために、このプログラムのソースコードは解説しません。ですが、ソースコード内にある日本語の文章のところをさらっと読んで見てください。プログラムの書き方は知らなくても、何をさせようとしているのかは、理解できるはずです。

また「実行」ボタンを押すと、実際にこのプログラムを動かすことができます。実行結果は、実行ボタンの下にある、「出力」のエリアに出ています。そこに二桁の掛け算が100問生成されている様子がわかるはずです。

次に読む記事: 「プログラミングとはアルゴリズムを機械がわかるように翻訳することだ」と言うことがわかる具体例

Return Top