ある日小学生の息子が学校から帰ってきて、「今日これやった」と言って教えてくれたのが、
アルゴロジック
というもの。
2020年、プログラミング教育が小学校で必修化されましたが、親としては学校などで実際にどのような学習が行われているかよくわかっていませんでした。
そこで本記事は、プログラミング勉強中の筆者がアルゴロジックをやってみたという話題です。
今回はアルゴロジックのルール等を簡単に解説します。
今後実際にステージの攻略などを載せていく予定です。
アルゴロジックとは
一般社団法人 電子情報技術産業協会(JEITA)が開発した、ゲーム感覚でプログラミングを体験してプログラミング的思考力を育成するソフトです。
アルゴロジックの公式サイトはこちら
プログラミング教育の必修化とは
そもそも、小学校でのプログラミング教育とは、パソコンの使い方を身に着けるだけではなく、
プログラミング的思考を養う
というのが狙いです。
「これがこうなって、あーなって、結果こうなる」みたいな考える力を育て、そして将来的に様々な問題解決のために活かせる力を付けるということですね。
アルゴロジックのルール
アルゴロジックサイト内の「使い方」に記載されていますが、ルールについてはシンプルで、ざっくり説明すると、
・タヌキ風のロボットに命令して旗を取る
・旗が複数ある場合は、全ての旗を回収する
これだけです。
画像引用:JEITA
非常にシンプルな内容ですね。
次に命令の仕方ですが、これがちょっと慣れるまでややこしいです。
ロボットへの命令の仕方
命令は、画面右に用意されたブロックを、配置エリアに一つずつ上から並べて、「スタート」ボタンを押すと、上から順番にブロックの内容が実行されます。
画像引用:JEITA
ブロックは大きく分けて3種類あります。
・矢印ブロック
・回転ブロック
・繰り返しブロック
各ブロックを説明します。
矢印ブロックに書かれた数字は、矢印の向いた方向に何マス動くか。という意味です。
数字をマウスでクリックするごとに①~④まで指定できます。(最大4マス動ける)
ちなみに、配置エリアの同じ行に二つ置くこともできます。(「右」と「上」で斜め)
この、「矢印の向いた方向」というのがミソで、
はロボットから見て前方。
はロボットから見て右方向。
はロボットから見て左方向。
という意味になります。
「↓」(下方向)はありません。つまりロボットは後ろに下がることはできません。
画面で僕らが上から見ている方向なのではなく、あくまで
「ロボットから見た方向」
であることを押さえておきましょう。
まずこれを理解するのがポイントです!
各ステージのスタート時、ロボットは画面で見て上の方向を向いた状態から始まります。
最初のステージのうちは画面下から上に向かって旗を取っていくので特に問題ないのですが、進めていくと上から下に向かう場面が出てきます。
その場合どうすれば良いのか?
そこで登場するのが次の「回転ブロック」です。
回転ブロックは、ロボットの向きを変えることができます。
マウスでクリックするごとに45°ずつ変える向きを指定できます。
例えば、ロボットの右手2マス目にある旗を取りたい場合、
矢印ブロックを「→②」とすれば旗を取れますが、もう一つの方法として、回転ブロックでロボットを右向きに変えてから、矢印ブロック「↑②」とすれば、同じように旗を取ることができます。
このような事から、プログラミングは必ずしも答えが一つではない。
ということが言えます。
さて、同じ動作があった場合、毎回同じ命令をするのは非効率です。
そこで登場するのが次の「繰り返しブロック」です。
数字のあるカッコと、カッコ閉じのセットで使います。
このカッコ内に置かれたブロックの命令を、数字の回数繰り返します。
数字をマウスでクリックするごとに①~④、⑧まで指定できます。(⑤⑥⑦はなぜかありません)
この繰り返しブロックの使い方が、このアルゴロジックの重要なポイントです。
またプログラミングにおいても、繰り返し処理というのは必ずと言っていいほど使います。
頭がこんがらがりそうになりますが、慣れてくればプログラミング的思考が身に付いてきていると言って良いかと思います。
まとめ
簡単にアルゴロジックのルールと、命令ブロックの使い方を解説しました。
このブロックを駆使して1問ずつ解いていく訳ですが、ゲーム感覚で進められるため楽しいです。
最初のうちは単純な命令でクリアできるので簡単簡単!と思っていたら、次第に置けるブロックが足りなくなったり、配置エリアが足りなくなってきて考えないと進めなくなります。
プログラムは、同じ内容のコード(命令)が何回も長々と書いてあると、プログラムの動作が遅くなったり修正やメンテナンスがしにくくなるため、できるだけ処理をまとめたり繰り返し処理を活用して簡潔に書く事が求められます。
アルゴロジックを通じてゲーム感覚で段階的にプログラミング的思考を養うのに、子供たちだけではなく、大人にも良いと思いました。
興味があったら是非やってみてください!
コメント
28◎
楽しかったですありがとうございますまたしますねー
楽しかったですありがとうございます
This article will help the internet people for building up new web site or even a
weblog from start to end.
Why people still use to read news papers when in this technological globe the whole thing is available on net?
すごくいね! こんなこともわかるなんてパソコン名人だ・・・
僕もこういう子になりたいです
また作るとき頑張ってください
いいねな
え