JEITAアルゴリズム体験ゲーム アルゴロジック

TOP > アルゴロジックとは

アルゴリズム体験ゲーム・アルゴロジック


ゲーム概要

アルゴリズム体験ゲーム・アルゴロジックはプログラミングの基本となる論理的思考(アルゴリズム)をゲーム感覚で習得するための課題解決型ゲームソフトです。 プログラミング経験がまったく無い方でも、楽しく「プログラミングをするための考え方」「アルゴリズム」を知ることができる「アルゴロジック」で、スーパープログラマーを目指してください。

アルゴリズム体験ゲーム アルゴロジック

アルゴリズム体験ゲーム アルゴロジック

アルゴロジックは、入門編~上級編までの問題を集めた「アルゴロジック」とアルゴロジックの基本動作の覚えるための「アルゴロジックJr.(ジュニア)」の2種類で構成されています。アルゴリズムの考え方に慣れていない方は、アルゴロジックJr.(初心者問題)で基本動作を習得してからアルゴロジック(チャレンジ問題)に取り組むことをおすすめします。

アルゴリズムとは?

ゲームスタート遊び方


アルゴロジック2

アルゴロジック2

プログラムの3つの制御構造である順次処理、繰り返し処理、分岐処理の考え方を学習できます。(順次処理、繰り返し処理はアルゴロジックで学習可能です)

プログラムの3つの制御構造とは?

ゲームスタート遊び方


お絵かきアルゴロジック

お絵かきアルゴロジック

アルゴロジックのコマンドブロックでロボットを動かして、自由に絵を描いてください。

ゲームスタート遊び方

より大きな絵を描きたい方はお絵かきアルゴロジックEXをご使用ください。 (遊び方はこちら


アルゴロジックを使用する際には利用上の注意事項をお読みください。

 

アルゴリズムとは?

ソフトウェアプログウラミングの基本となる「アルゴリズム」を簡単解説!

「アルゴリズム」とは、コンピューターで計算を行うときの「計算方法」のことです。広く考えれば何か物事を行うときの「やり方」のことなのです。簡単な例として、にんじん一本から星型の輪切りを30個作る方法を考えてみましょう。

方法1 まず輪切りにして、1つ1つを星型にする

包丁を入れる回数 合計331回1例目は輪切りをたくさん作ってから、それぞれの角を落として星型にする方法です。これだと、包丁を入れる回数は、輪切りを作るのに31回(端っこを落とすのに2回)それぞれを星型にするのに、10回包丁を入れるので、合計 31+10×30 = 331回、包丁を入れます。かなり大変ですね。

方法2 まず星型にしてから、輪切りにする

包丁を入れる回数 合計41回2例目はにんじん本体を星型に切って(断面が星型の棒になります)それから輪切りにするという方法です。
これは、本体を星型にするのに10回、輪切りにするのに31回なので、なんと包丁を入れる回数は41回に減ります。
同じ星型の輪切りを作るのに、ちょっとやり方を変えただけでこれだけ違いがでます。
がんばって修行して包丁さばきのスピードをあげる前に、「やり方」の工夫を考えたほうがよさそうですね。

キャベツの千切りでも、葉っぱを一枚一枚千切りにするより、10枚くらい重ねてやったほうが、はるかに効率的です。こういった工夫がなかったら、とんかつ屋さんで山盛りキャベツを食べる、なんて楽しみは味わえませんね。

ソフトウェアのプログラムは「やり方=アルゴリズム」をプログラミング言語を用いて具体的に記述したものです。「やり方」を工夫して、より良いアルゴリズムを考えることが良いプログラミングであると言うことができます。同じ計算を行うのなら「いい方法でやればより速く計算できる」ということなのです。

「アルゴロジック」はアルゴリズムの考え方を理解していただくためのゲームです。使用するコマンドをできるだけ少なくするなど、ゴールするまでの「やり方」を良く考えてチャレンジしてください!

出典:宇野 毅明  ホームページ:http://research.nii.ac.jp/~uno/index-j.html


 

プログラムの3つの制御構造とは?

プログラムの3つの制御構造とは「順次」「繰り返し」「分岐」という基本的な処理のことを言います。
プログラムはこの3つの制御構造を組み合わせることによって表現出来ます。
※図はフローチャートという、実際のプログラミングでも使用するプログラムの動作手順を示す表記方法です。

順次処理

フロー

“順次処理”とは順番に命令を実行する処理です。
左のフローチャートは下図のロボットに旗を取らせるための例です。
画面


繰り返し処理

フロー

“繰り返し処理”とは同じことを繰り返す処理です。
左のフローチャートでは「前に進む」の処理を繰り返しています。
画面


分岐処理

フロー

“分岐処理”とは条件によって実行の流れが変わる処理です。
左のフローチャートでは、もし(IF)前に壁がある場合には右を向き、
前に壁がない場合(ELSE)には前に進む処理を繰り返しています。
画面



ページのトップへ
Copyright(c)2010. Japan Electronics and Information Tecnology industries Association. All right reserved.