INASOFT 管理人のひとこと


フリーソフトダウンロードサイト「INASOFT」の管理人 矢吹拓也 が日々の「ひとこと」を語るページです。
2021年1月1日より、旧ブログ(blog.inasoft.org)からお引越ししました。
・INASOFT Webサイト: https://www.inasoft.org/
・管理人のふたこと(長文記事/寄稿文): https://www.inasoft.org/talk/
2022年7月下旬より再び本業多忙化してきているため、更新頻度は落ちます。 [2022/7/24 19:32]

目次 | ←前へ / 2021-06-14 00:00 / 次へ→ / 最新へ⇒

■「関数」を最初に知ったのは、数学だったか、プログラミングだったか。今後の生徒たちの順番は?

2021年 6月14日(月) 0:00:00



RSSRSS配信中
https://www.inasoft.org/



最近、小学校でパソコン教育やプログラミング教育が取り入れられるという話が出ています。

長男の通う学校では、小学校1年の時期からパソコンにログインするためのIDとパスワードが配られ、パソコン教育の初歩として「ペイント3D」を使った体験が行われており、僕が小1の長男から「ペイント3Dの使い方を習う」という逆転現象が発生するなど、なかなか興味深い事象が発生しています。

この他にも、子供向けの人気ユーチューバーが動画の題材としてプログラミングを扱うとか、任天堂がプログラミングを題材にしたゲームソフトを発売するとか、Raspberry Piを学習用に使うとか、Scratch/Scratch Jr.をプログラミング学習に使うとか、マインクラフトでプログラミングを初めて見るとか、様々なアプローチが登場してきており、時代はどんどん変わっていくなと感じます。プログラミングカーという、プログラミング学習用のおもちゃが、祖母から孫へプレゼントされてたりもします。

20~30年前に生きていた時代では、「日本語をつかったプログラミング言語」(ひまわり等)はあったかと思いますが、今の様な、ビジュアル第一主義で、小学生でもなじみやすいプログラミングは、まだまだなかったかなと思います。

まぁ、ビジュアル第一主義なプログラミングが、ビジネスの世界でどこまで通用するかは、よく分かりませんけどね。あれだけだと、「Node-REDとノンプログラミング(ノーコード・ノーコーディング)だけでどこまで書けるか?」みたいな挑戦になりそうな気がしますからね。

僕が社会人になった時期は、コンポーネントの作成に苦労さえすれば、コンポーネントを組み合わせるだけでビジネスのプログラミングができる!みたいなものが「第4世代プログラミング言語」みたいな形でもてはやされていたみたいなのですが、実際の適用ではなかなか難しかったと記憶しています。

まぁ、それはともかくとして、小さいうちからアルゴリズム構築などのプログラミング的な思考を持っておくのは良いことだと思いますので、ビジネスに使えるかどうかは別として、身に着けておくべきだと思います。

で、本題なのですが、「関数(函数・function)」の概念をどういう順序で知ることになるのかな?という話。

20~30年前では、中学か高校で関数 y=f(x) 的なやつを学習し、その後にプログラミングでの「関数」を知ることになるという順序だったかと思います。

ちなみに僕の場合は、小6の時にC言語を覚え始めていたことから、プログラミングでの「関数」の概念(サブルーチン的な理解)を先に知ってから、中学での数学の「関数」を習うという順番になりました。概念の理解の促進、あるいは阻害の面で、少なからず影響があったと考えています。

小学校でプログラミングの学習をするとして、サブルーチン的な考えを教えるところまで進むかはわかりませんが、もし「関数」の概念をプログラミングの方で先に知るとなれば、僕と同じような順番で「関数を知る」児童・生徒が増えてくるんだろうなと思ったりしてます。

そういえば、大学では数学科に進んだので、大学に入って間もなく「写像」の概念が出てきて、ちょっと混乱を起こしたんですけどね。結局「戻り値が数値x|xCならば関数、そうでない(集合・集合族を扱っていたり、数値以外のものをmappingしている、関数からグラフ全体を導く等)なら写像」と理解して、「あれ?文字列を返却値に取るプログラミングにおける関数って、この定義に従うなら、もしかして写像?」とか思った疑問を解決しないまま、大学を卒業しちゃったんですけどね。行列やベクトルを戻り値に取る場合はどうなるんだ?とか、宙ぶらりんのまま20年くらい経過してます。

そういえばごく最近知ったのですが、「素数の一般項」(1を入れたら1番目の素数が求められ、2を入れたら2番目の素数が求められ、…)の式というものについて。僕の中では「ない」という理解だったのですが、どうやら、「ある」が正解らしいですね。

ただし、「一般項がある」といった場合に想像するような、シンプルな数式ではなく(いや、見た目はシンプルっぽいのですが)、あたかもプログラムを数式に落とし込んだような、内部でループ処理が必要な式だったりするのですが、それでもまぁ、ないわけではない、ということが目の前に示されているというのは、なかなかショックというか、いや、面白いことであります。Mathematicaに数式を突っ込めば、たしかに素数が順番通りに出てくるそうですし。ただし、巨大な番号の素数を計算したければ、それなりに時間がかかります。効率が良いかは別として。



目次 | ←前へ / 2021-06-14 00:00 / 次へ→ / 最新へ⇒


目次の表示:


ブログではないので、コメント機能とトラックバック機能は提供していません。ご質問・ご意見等はメールフィードバックまたはTwitter等からお願いします。いただいたご質問・ご意見などは、この「管理人のひとこと」の記事に追加、あるいは新規の記事にする形で一部または全文をそのまま、あるいは加工させていただいた上で、ご紹介させていただく場合があります。
当サイトでは掲載内容による不具合等に関する責任を持ちません。また、内容の正確性についての保証もありませんので、情報をご利用の際は、利用者の自己責任で確認をお願いします。本ページは公開から1年半後の任意のタイミングで削除される予定です。


- 最近の更新 -



3130681 (+0061)[+1082]

Copyright© 2010-2024 INASOFT