今回は、ゲーム感覚でプログラミングを体験できるソフト
アルゴロジックを紹介します。
プログラミング教育が始まり、
- 家庭でもできることを探している
- 遊びながらプログラミングの考え方を学びたい
- パズルゲームが好き
という方にオススメ。
プログラミングの基本的な考え方である
「順次処理」「くり返し処理」「分岐処理」を学ぶことができます。
アルゴロジックとは
アルゴロジックとは、あたえられた問題を解くタイプの教材です。
内容は、コマンドブロックを組み合わせてロボットに指示を出し、
全部のハタを取る または 線をなぞることができたらクリアというもの。
下は古いバージョンのものですが紹介動画です。
アルゴロジック1とアルゴロジック2があります。
- アルゴロジック1
順次処理とくり返し処理が学べます。
入門的な位置づけのジュニア問題とチャレンジ問題があります。 - アルゴロジック2
順次処理、くり返し処理、分岐処理が学べます。
今回は、アルゴロジック1のジュニア問題とアルゴロジック2で遊んでみました。
遊び方
プレイ画面
コマンドブロックをドラッグアンドドロップして配置エリアへ移動し、
命令を組み立てます。
「START」ボタンをおすと、
配置エリアのブロックの命令にしたがってロボットが動きます。
ロボットが全部の旗を取る または 線をはみ出さずになぞれたらクリアです。
「設定」ボタンからロボットのスピードを選べます。
ブロック説明
前・右・左に進む
ロボットが向いている方向に対して、
矢印の方向へ進むコマンドブロック。
数字をクリックして、進む距離を設定できます。
回転
ロボットが今向いている方向を0°(▲)とし、
三角の方向へロボットの向きを変えるコマンドブロック。
三角形をクリックして回転させる方向を設定します。
くり返し・LOOP(ループ)
くり返しコマンドブロック( [ LOOP )と
エンドコマンドブロック( ] )ではさまれた
コマンドブロックをくり返し実行します。
数字をクリックして、くり返す回数を設定します。
IF(イフ)/ELSE(エルス)
IFは「もし」という意味です。
ロボットのひとつ前のマスを調べて「カベがある場合」、
IFコマンドブロック( [ IF 前に壁 )と
エンドコマンドブロック( ] )にはさまれた
コマンドブロックを実行します。
ELSEは「そうでなければ」という意味。
IFの条件を満たさない(前のマスにカベがない)場合、
ELSEコマンドブロック( ][ ELSE )と
エンドコマンドブロック( ] )にはさまれた
コマンドブロックを実行します。
IFといっしょに使います。
ナナメに移動する(アルゴロジック1)
前に進むコマンドと、右または左に進むコマンドを横にならべて置くと
ナナメの方向にロボットを動かすことができます。
旗の上で必ず止まろう
ロボットは必ず旗の上に止まるようにしましょう。
通過するだけではダメです。
最短手順を目指そう!
問題をクリアしたときに、選択画面に○や◎がつきます。
使用したコマンドブロックの数が最小だった場合、◎がつきます。
◎はむずかしい!
アルゴロジック2の応用問題は、
大人でも最短手順である◎の答えを出すのはむずかしいです。
アルゴロジックは、もともとプログラミング経験の無い中高校生に
プログラミングする楽しさを知ってもらうことを目的に開発されたソフト。
小学生から大人まで挑戦できるよう、様々な難易度の問題が用意されています。
まずは〇を目指して、それから工夫できる点がないかみてみましょう。
できなくて ずっとなやんでしまうのであれば、
とばして別の問題にチャレンジしてもいいと思います。
アルゴロジック1のジュニア問題はこちらに解答例があります。
チャレンジ問題とアルゴロジック2の解答例は原則非公開のようです。
アプリもあります
アルゴロジックはスマホでも動作しますが、
スマホは画面が小さく操作しづらいため、推奨環境から外されています。
スマホからもやりたい!という方には
アルゴロジックの基本機能をスマホで動かすことができるアプリ
「GPリーグプログラミングコロシアム「トレーニングジム」」がオススメ。
まとめ
アルゴロジックについて紹介しました。
小学生であれば、アルゴロジック1のジュニア問題と、
アルゴロジック2の「順次」「くり返し」「分岐」の問題を
◎目指してやっておくといいと思います。
余力があったら応用やチャレンジ問題に挑戦してみましょう。