プログラミングとは?

コンピュータとは?

毎日、パソコンで仕事をしたりインターネットを見たり、スマートフォンで連絡を取り合ったり世界中の友達と交流したりと、私たちの生活の中でパソコンやスマートフォンはなくてはならない存在となっています。
 
パソコンやスマートフォンだけでなく、テレビや冷蔵庫、エアコン、自動車などなど…
コンピュータは、身の回りのあらゆるところに当たり前に存在しています。
 
このように私たちの身近に存在し、毎日のくらしを便利にしてくれるコンピュータですが、コンピュータがどのように動いているかを知っている人は一部の限られた人にとどまっています。

コンピュータとプログラム

コンピュータがどのように動いているか?
当然のことながら、コンピュータは自身で考えて動いているわけではありません。
 
人間が考えて、命令を作り、それに基づいてコンピュータは動いています。
命令がなければ、コンピュータもただの箱と変わりません。
 
コンピュータに便利な働きをしてもらうための命令のことを「プログラム」と言い、プログラムを作ることを「プログラミング」と言います。

プログラミングの基本となる考え方

便利な働きをしてくれるコンピュータですが、命令(プログラム)は正確に、細かく指示してあげなければ、思った通りに動いてくれません。
人間であれば、ちょっとした間違いや曖昧な言い方でも理解してくれますが、コンピュータはそういう意味では、まったく融通がききません。
 
また、人間の言葉にも日本語、英語、中国語、フランス語etc…と様々な言語があるように、プログラミング言語にも実に多くの種類の言語が存在します。
 
ですが、多くのプログラミング言語には、共通した考え方もたくさんあり、その中でも基本的な考え方は次の3つです。

1.『順次実行』

プログラムは一つ一つの命令を順番に書いていくのですが、コンピュータはその命令を上から順番に一つ一つ実行していきます。
一番上に書かれた命令から順に実行していき、最後の命令を実行したら、動作を停止します。
このように上から順番に命令を実行していくこと「順次実行」と言います。
実際にプログラミングする際には、この命令の順番はとても重要です。
そうしないと効率が悪くなったり、思い通りの結果が得られなかったりするからです。

2.『繰り返し処理』

人間なら、同じ作業を何回も繰り返すと嫌になったり、途中でミスをしてしまったりということがよくありますが、コンピュータは繰り返し作業が大の得意です。
一つの命令だけでなく、複数の命令を組み合わせて、それを1000回、1億回くりかえしても決して嫌がったりしませんし、途中でミスを犯すこともありません。
このように、ある作業を繰り返すこと「繰り返し処理」と言います。

3.『条件分岐』

コンピュータは「繰り返し処理」が得意と言いましたが、永遠に同じことを繰り返していたら、大変なことになってしまう場合があります。
そこで、ある条件を決めて、繰り返し処理を止めたり、違う処理を実行したりすることが必要になってきます。
このように、ある条件によって、処理を分けることを「条件分岐」と言います。
条件分岐の基本は「もし○○なら、□□を実行する、そうでなければ△△を実行する」というように条件(〇〇)が合っているか、合っていないかを判定して処理内容を変えます。

ALGOGLAとプログラミング3つの基本

ALGOGLA(アルゴグラ)にも当然、この3つ基本となる考え方が含まれています。
 
コードカードを並べた際、必ず左から右へ、1枚ずつ処理が実行される、は『順次実行』。

 
 
オレンジ色制御カードの「3回繰り返す」、または「サイコロの目の回数繰り返す」「無限回数繰り返す」といったカードは『繰り返し処理』。
「もし、前に壁があったら」カードは『条件分岐』の考え方を表しています。

 
 
それ以外に、「サイコロの目の回数繰り返す」は『乱数』というプログラミングでよく使われる考え方、対戦プレイの「アドバンストルール」で使用する「function(ファンクション)」カードは、『関数』という考え方を取り入れています。


 
このように、ALGOGLA(アルゴグラ)で遊ぶうちに、知らず知らずにプログラミングの基本的な考え方を身に付けることができるようになっています。