文系のパパママも、親子で一緒に楽しめるプログラミング教育とは?元システムエンジニアのママが、身近なプログラミングをわかりやすく解説する連載第3回目は「フローチャート」について学びます。親子の遊びの中に、ぜひプログラミング遊びを取り入れてみてくださいね。
プログラミングの基礎用語を覚えよう
聞きなれない基礎用語を理解することは、プログラミングを身近に感じることにもつながります。そこで今回は、元システムエンジニアとしての経験と、3児の親としての両方の視点から考える「フローチャート」について紹介します。
フローチャートは、実際のプログラミングでも最初に必ず作成される重要なもの。つまり、プログラミングを理解する上では、フローチャートを理解することも欠かせないのです。
一見難しそうですが、日常的な事例をフローチャートにするのは意外と簡単です!子どもと楽しみながらできるプログラミング遊びを通して一緒に考えてみましょう。
フローチャートってなあに?
たとえば「今日は晴れているか?」という問いかけに対して、
YESなら……そのまま出かける。
NOなら……傘を持って出かける。
というように、ひとつの事柄に対して選択肢が分かれていることを、図で表したものがフローチャートです。
詳しく説明すると、ダイヤ型の箱の場合は「YES/NO」の判断がいるもの、ただの四角に箱で示した場合はプロセスや処理を示すといった書き方があるのですが、今回はそのような本格的なところまで理解する必要はありません。手はじめとして、フローチャートはさまざまな分岐の集合体と理解しておけば充分です。
ちなみに、昔からよくあるタイプ占いなどの「YES/NOチャート」と似ていますがちょっと違います。占いでは、YESかNOによって次のコマに進んでいくと、それぞれまったく別の最終結果にたどりつきますね。
一方、プログラミングのフローチャートは、YESかNOによって「何をするかという処理の指示」を表しているのです。朝起きる→出かけるという結果に至るまでの処理の分岐がフローチャートです。
フローチャート遊びを考えてみよう!
「今日は晴れているか?」
YESなら……そのまま出かける。
NOなら……傘を持って出かける。
先ほども例に挙げた、このような単純な質問に対しての回答を「YES/NO」で用意して、紙に書き出してみましょう。
YESなら……幼稚園の制服を着る。
NOなら……普段の服を着る。
YESなら……お風呂の準備をする。
NOなら……布団に入って寝る。
この時大切なのは「YES/NO」のどちらを選ぶかによって選択する処理が違うというイメージを持つことです。
・YESにするとこれを行い、NOにするとこれを行う。
・YESとNOではたどる手順が異なっている。
このようなことに気がつけば、フローチャートの基本的な考えはできていることになります。
フローチャートを深めてみよう!
YES:そのまま出かける。
NO:雨がたくさん降っているか確認する。
次に、「NO→雨がたくさん降っているか確認する」に対して、さらに「YES/NO」の回答を準備してみましょう。
問いかけ:「雨がたくさん降っているか確認する」
YES:傘とレインコートを用意して出かける。
NO:傘を用意して出かける。
上手にできるようになったら、さらに質問を増やして長いフローチャートを作成してみましょう。分岐をつなげていくと、はじめの「今日は晴れている」という一つの問いかけからたくさんの結果ができます。
フローチャートでは、このようにしてたくさんの分岐を通り、たとえば「幼稚園に行く」というような具体的な最終結果にたどり着きます。
フローチャートの基本は分岐と判断です。たくさんの分岐の集合体であるフローチャート。フローチャート遊びを通じて各分岐を通った結果、何通りの分岐ができたかもチェックしてみてくださいね。
フローチャートは日常生活でも役にたつ!
たとえば、学校のテストで100点を取るにはどうしたらいいかを考えるときにも、
問いかけ:「毎日勉強する?」
YES:時間を決める
NO:曜日を決める
など、さまざまなプロセスを考えてから「学校のテストで100点を取る」という結果へ結びつけることができます。具体的な選択肢を積み重ねると、結果につながるということが理解できれば、実生活でも役立てられるかもしれません。
プログラミング遊びで論理的思考力を育もう
プログラミングを理解するということは、論理的な考え方を身につけるということでもあります。親子の日常的なやり取りの中に、ぜひフローチャート遊びを取り入れてみてくださいね。