日本とはかなり違う?アメリカ流算数教育で育まれるプログラミング的思考
最近注目されているプログラミング的思考とは、プログラマーになる人たちに必須とされる「問題解決力」です。日本の算数教育が暗記や計算を中心に行われるのに対し、アメリカでは問題解決力につながる「考える力」を育てることに重点を置いています。
プログラミング的思考の基となる問題解決力を養うために必要なスキルとはどのようなものか、アメリカではどういった算数教育が行われているのかについてお伝えします。
目次
アメリカが重視する「問題解決力」とは?
アメリカで重視されている「問題解決力」とは、何かの問題に直面したときにいくつかの方法を思いつき試してみる力や、失敗しても次の方法を試し、解けるまで諦めずに頑張れる力です。
まず必要なのは「理解力」で、問題の本質や根本を明確に理解しているかどうかです。簡単な言葉で誰かに説明することができれば、理解しているといえるでしょう。
次に、解決していくステップを考えて「計画を立てる」ことが求められます。動き出す前に問題を分析し、手順をはっきりとさせてから行動します。
最後は「分ける」または「減らす」ことです。問題を1つの大きなものとしてとらえず小さな問題の集合体と認識し、その1つ1つを解決していくことで、大きな問題の解決策を得ることができます。
この考え方を理解した後は実践を重ねていくことが大切で、多くの問題を解くことによりスキルが身につくと考えられています。
「解答の求め方」を考えさせるアメリカの算数教育
アメリカの算数の教え方は日本とは360度違います。「1+1=2」のように解答を求めるだけではなく、解答の求め方を考えさせることで考える力を育てます。例えば、小学1年生の宿題で下記のような問題がありました。
「答えが10になる問題をできるだけ書きなさい」
解答は「1+9、2+8、3+7、4+6、5+5、8+2、6+4、7+3、8+2、9+1」となります。
足し算の公式だけでも、これだけあることがわかります。1年生なのでほとんどの子どもは足し算で書きますが、なかには引き算、掛け算、割り算の概念で答える子どももいます。
また、数字の公式ではなくりんごやピザなどの物を使ったり、文章題にしたりなどの発想も自由です。グループごとにアイデアを出し合い、自分はどうやって「10」という答えを導き出したかを説明し共有します。
さらにそのグループの話し合いのなかで、新たな解答の導きかたを発見する場合もあります。こういった手法を実践することで問題内容を考えることにつながり、公式をただ暗記することに比べると記憶に定着しやすく理解度もいっそう深まることになります。
また、自分の意見を相手に伝えて相手の意見も聞くことにより、コミュニケーション力も同時に養っていくことができます。
足し算なのに引く?引き算なのに足す?アメリカ流計算の考え方
例えば「58+45」の解答を導き出すとき、日本ではどう考えるでしょうか。おそらく多くの子どもは、筆算をして58に45を足すと思います。アメリカの場合は筆算も教わりますが、子どもたちが出し合ったアイデアを含め、下記のような方法のなかから選んで解答を導くのです。
例えば、「Number bond」というそれぞれの数字の分解をして最終的に足す方法があります。
「58+45」を当てはめ、10を超える足し算を避けて計算してみましょう。
58を50と8に分けて、45を43と2に分けます。ポイントは1桁の方を足しやすい数字にすることです。今回は1桁を「8+2=10」とするとわかりやすいので、45を43と2に分けてみました。まずは2桁である50と43を足し、次に1桁の8と2を足し、その合計を合わせます。
このやり方を使った式は「 (50+43)+(8+2)=103」 となります。
では次に、引き算で「Compensation」という別な方法を使ってみます。
仮に「20-12」の式で考えてみましょう。20から12を引くわけですが、0から数字を引かなければいけないところでつまずいてしまう子どもは割といます。そこで、引きやすい数字に置き換えてみます。
例えば両方からそれぞれ2を引き、「18-10=8」という考え方をします。答えは2つの数字の差を出すことなので、数字が変わっていても答えは同じものが導き出されるというわけです。
同じように、大きな数字でも見ていきましょう。
「300―285」の場合も、0から数字を引かないように変えます。そこで、300から1を引いて299に、285も1を引き284にして、「299―284=15」というように計算を簡単にします。このように1つの問題を分けて考え難しさを減らすことで、簡単に解けるようになるのです。
さらに、引き算であっても足して計算する場合もあります。
「72―28」の式では、28をきりのよい数字の30にするために28に2を足します。72にも同じように2を足して「74―30=44」とすれば、計算が簡単になります。
つまり、足し算も引き算も両方の数字に同じ数を足したり引いたりして計算すれば、解答は変わらないわけです。
まとめ
これら算数の計算方法を見て気づくのは、数字を分解して足したり引いたりする考え方が「問題解決力」につながっているということです。
グループで解答の導き方を話し合いその後自分に合ったやり方で計算するという手法も、1つの問題をさまざまな角度から考えて解決する「問題解決力」の育成に役立つことでしょう。
こういった柔軟な考え方を奨励しているアメリカ流の算数教育が、「問題解決力」を通じてプログラミング的思考を育む土壌となっていくのだと思います。
世界35か国在住の250名以上の女性リサーチャー・ライターのネットワーク(2019年4月時点)。
企業の海外におけるマーケティング活動(市場調査やプロモーション)をサポートしている。