教育用プログラミングは小学生には難しい?

プログラム

プログラムを作っていくといくつかこれ小学生が理解できるのと思われる項目がでてきます。それはXY座標/負の数/角度/変数です。それぞれについて今の学校教育ではいつ頃教わるのかを知らべてみました。

 

1)負の数

いわゆるマイナスの数です。文科省の学習指導要綱の数学の項目では、マイナスの数は中学1年の最初に「数を正の数と負の数まで拡張し,数の概念についての理解を深める。」とあり小学校では勉強しないようです。

ただ、これについては僕はあまり気にすることではないと思っており、実生活でも「今日の気温は-1℃です」と天気予報でいったりしているし子供向けのマンガ・アニメでもポケモンのモンスターなどがきっと絶対零度「-273.15℃」の冷気を浴びせたなどとあったりするので、このマイナスという言葉や概念については何となく理解できるんじゃないでしょうか。

2)XY座標

小学校では4年生で座標の意味につながる平面上や空間にあるものの位置の表し方について学習しているようです。ただし、前述のとおり負の数は用いられないため、正の数で右に3つ、上に2つといった位置の表し方であり。同時に変化の様子を折れ線グラフに表すことも学んでいますが、棒グラフの上端を線で結ぶ作業であり2つの数の組を用いて平面上の位置を表すという座標の概念に基づいたものではないとされています。そのため中学校になり、はじめて数量の関係を座標を用いてグラフに表すとされています。そのため、ちょっとXY座標については教えてあげる必要がありますね。

3)変数

小学校では,4年から6年にかけて,数量の関係を□,△,a,xなどを用いて式に表しそれらに数を当てはめて調べたり変化の様子を折れ線グラフで表し変化の特徴を読み取ったり,比例の関係を理解しこれを用いて問題解決したり,反比例の関係について理解したりしてきています。そのため、プログラムで使われる変数に数字を入れるという考えについても原理はそれほど難しくないかと思われます。

 

4)角度

角度については小学3~4年生頃から勉強しているようで、直角が90度や、正三角形が60度ということを勉強するようです。ただし内角、外角の概念は中学からのようですが、360度、180度の概念を勉強するので、これらを駆使すれば内角、外角という意味は理解できると思います。

5)乱数

乱数については、明確にいつからというのがわかりませんでしたが、おそらく中学2年の確率について勉強する際に数学的概念として理解するのではないでしょうか、プログラミングでいうところの乱数は単純にランダムな数字をだしますよってレベルで確率や統計と照らし合わせて概念を理解しろというようなしろものではなく、単純にサイコロを振るように出る目がころころといつも変わるという風に理解すれば小学生でもわかる概念なので、乱数という言葉をわかるように言いかえるところだけ注意すればよいと思います。

6)絶対値

絶対値についても簡単なプログラムで使うことがあります、これは負の数をならう中学1年生で同時にならうようです。ただ、これも単純に0からの距離なのでそんなに難しくないですね。なので心配のない部分かと思います。

 

その他に知りたい人は文部省の指導要領を参照ください。

第2章 各教科 第3節 算数:文部科学省

 

さて、こうやってみるとXY座標の部分だけがちょっと大人が丁寧に教えて上げる必要がある箇所かなと思います。とはいえ、思うにどれも分数の足し算よりは簡単に覚えられる範囲だと思っています。(小学生にとって分数の四則演算って一番のハードルですよね、これは大人でも教え方に頭をひねります)

 

さて小学校で負の数などを教えていないのは、「算数」であるから、算数は現実世界の数値を用いて物事を理解するというものであるためです。そのため面白いのは、2-5という計算の答えは小学校では「こたえなし」になっています。大人の僕たちからみたら「-3」じゃんと思うのですが、そこは算数だからなんですね。

 

一方、中学校からならう「数学」は抽象的な概念で物事を数字で理解します。つまり現実にはないものを扱います。この抽象化ができないというのが数学が苦手になるんですね。X座標 ー3 というのも、左に3じゃないの? と理解できないとか、二次方程式やその解であるルートについて現実の世界ではあまり目にしないため理解できなくなるんですよね。

 

さて、その中学でも習っていないことは解なしというのがあります。たとえば

X² = ー4

については中学数学では 解なし となります。これが高校数学まで行くと虚数を習うため答えが X=2i  になるんですね。そう考えると習っていないから答えがでないというのも変な話です。同様に学校で習ってないからといって、そのプログラミングは早すぎるということはないかと思います。逆にプログラムを通して、これってそういう意味かと理解することができます。数学が嫌いになる子は、これってどういう意味なの?何の役に立つの?というところがあるからだと思うのですが、それを逆にぷプログラミングがサポートしてくれるのではないでしょうか?

 

ちょっと先月、ぼーっとテレビでヒルナンデスをみていたら、昨年のTechKidsグランプリで小学3年生の子が「素数」をもとにしたゲームを作って受賞していました。

GitHubやStack Overflowも!? 情報収集力と総合力の高さが光った小学生達――Tech Kids Grand Prix決勝プレゼンテーションレポート
応募総数1000件を越えた小学生プログラミングコンテスト「Tech Kids Grand Prix(テックキッズグランプリ)」の決勝プレゼンテーション及び表彰式が、2018年9月24日に開催された。会場の渋谷ヒカリエホールでは、「ゲーム部門」「自由制作部門」それぞれのファイナリスト6名ずつ12名が堂々とプレゼンテーショ...

素数はちゃんと計算に用いて使うのは中学からのようですが、小学校高学年でもでるそうですね。とはいえ小学3年生では素数はでてきません。必要は発明の母です。この子はプログラムを通じて数学が大好きになったそうです。

 

このようにプログラミングは数学ととても相性がよいのです。プログラムを勉強しながら、ついでに算数、数学に強くなっていきましょう。

コメント

タイトルとURLをコピーしました