プログラミングを学ぶと、データの処理を必ず学ばなければなりません。データの保持やデータの更新など、実際のプログラムではよくあることです。データを保管する場所としては、「変数」が第一選択ですが、データの数が多くなったり、データの構造が複雑になると、やはり「配列」を使わなければなりません。プログラミングの初心者でも、変数をよく理解できます。変数はわかりやすいです。しかし、配列になると一気に難しく感じる生徒が多いです。少し複雑なゲームやアプリを作りたいなら、配列を使いこなせなければなりません。
高校の「情報I」でも配列の説明と活用があります。今回は、この配列の基礎を確認しましょう。
まず、配列とは、何かを説明します。変数はよく「箱」と例えられます。その箱の中に、データを入れます。その場合、一つの変数には、1つのデータを入れることができます。配列も似たようなものです。ただ、違うのが、配列の場合は、一つの配列には、多くのデータを入れることができます。
私は、変数を「箱」と説明します。そして、配列を説明するときは、たくさんの変数(小さな「箱」)が入っている大きなダンボールと説明しています。配列は、その大きなダンボールのことです。どれぐらい小さな「箱」が入れられるかというと、理論的には無限に入れられます。実際には、メモリの容量などの制限があります。下の図を使って説明します。
小さい青色の箱は変数です。全部で7個あります。一つ一つの変数の箱には、それぞれ1つのデータが入っています。今回、この7つの小さな箱は、大きな黒色のダンボールに入れられています。この大きな黒色のダンボールは、「配列」のことです。7つのデータを1つの配列に入れています。では、なぜ配列が必要なのでしょうか?一番の理由はたくさんのデータを一元で管理することができるからです。もちろん、変数のままでもプログラムを作ることができますが、その場合、それぞれの変数に名前をつけなければなりません。今回7個のデータだけならまだいいですが、もしこれが1万件のデータを処理するプログラムなら、1万個の変数を作らなければなりません。大変な作業となります。しかし、配列を使えれば、この問題は簡単に解決できます。なぜなら、配列は1つなので、その配列の中に、7つのデータが入っているか、1万のデータが入っているか、関係なく、配列は1つだけです。配列の名前も1つで済みます。
名前の問題が解決できました。しかし、名前が1つになったので、どのようにデータを取り出すかという問題が発生します。変数なら、それぞれの変数の名前が違うので、変数名で区別できます。配列になると、変数の名前がなくなり、1つの配列の名前になりますので、データを取り出す時、どのデータを取り出すか、分からなくなります。では、どうすればいいでしょうか?
配列から指定データを取り出したい場合、添字と呼ばれる番号を使います。実は、配列の中にデータを入れるとき、自動的にそのデータに番号が振られています。番号は0から順次振ります。最初のデータは0番、次のデータは1番、更に次のデータは2番、のような感じです。注意しなければならないのが、最初のデータが0番のことです。上の図のように、「日」というデータは0番、「月」というデータは1番、「土」というデータは6番となります。配列の4番目のデータを指定すれば、「木」というデータを取得できます。
これが、配列の基本の仕組みです。これをまずしっかり理解する必要があります。配列に関するプログラムは、よくループ文と組み合わせて使います。
今回はPythonの例を出します。
実行結果
配列の中の特定のデータを取得したり、配列の中のデータを1件ずつ取得し、処理を与える仕組みはよくあります。配列の基礎をしっかり理解すれば、簡単に活用できるようになります。
次回は、多くの生徒が難しく感じている二次元配列について説明します。