Mj0028.gif (1624 バイト)EMj0032.gif (1540 バイト)Mj0019.gif (1601 バイト)EMj0033.gif (1754 バイト)    ARRAYS

レッスン16:配列(宣言と代入)

ここでは、配列の宣言と代入について、次の順で簡単に説明します。

プログラム
プログラム説明
配列の宣言
配列への代入
形式
配列の宣言
配列要素の参照
動作確認
レッスン17では

プログラム

次のプログラムでは、配列を宣言し、値を代入しています。

  1. program hairetu;
  2. var i:integer;
  3.       a:array [1..3] of integer;
  4. begin
  5.   for i:=1 to 3 do
  6.    a[i]:=100+i;
  7. end.

[注意]左端の番号は、プログラムの一部ではありません。各行を区別するために付けた番号です。

先頭へ戻る

プログラム説明

配列の宣言

2行目で整数型の変数iを宣言しています。3行目では整数型の配列を宣言しています。この配列の要素数が3つですから箱が3つ用意されます。それぞれの箱に整数型の値が入ります。3つの箱全体に名前がaと付けられています。配列の添え字は1から3です。

変数と配列の概念図

配列への代入

配列の添え字は1から3ですので、aの1番目の箱はa[1]、2番目の箱はa[2]、3番目の箱はa[3]で参照できます。a[1]:=100とすれば、1番目の箱に100を入れることができます。

5行目と6行目繰り返しforブロックでは、繰り返し処理により、aの1番目の箱に101を、2番目の箱に102を、3番目の箱に103を入れています。この繰り返しの処理を詳しく見てみましょう。

まず、5行目のfor文にi:=1とありますので、iの値は1になります。

iが1

次に、6行目のa[i]:=100+iが実行されます。iが1ですので、右辺は100+1、すなわち、101になります。左辺はa[1]になります。この代入文により、aの1番目の箱に101が入ります。

aの1番目の箱が101

5行目に戻ってiを1つ増やして2にし、6行目でa[i]:=100+iを計算します。この代入文により、aの2番目の箱に102が入ります。

aの2番目の箱が102

再び、5行目に戻ってiを1つ増やして3にし、6行目でa[i]:=100+iを計算します。

aの3番目の箱が103

5行目のtoの後が3になっています。kはその値になっていますので、これ以上繰り返しは行われません。

先頭へ戻る

形式

配列の宣言形式

配列の宣言は次のようにします。

var 配列名: array [添え字の最小値..添え字の最大値] of

要素数は、
  添え字の最大値-添え字の最小値+1
で計算して求めることができます。例えば、var data: array [1..100] of integerとしますと、100の要素からなる配列が用意され、名前はdataと付けられることになります。

配列要素の参照

配列要素の参照は次のようにします。

配列名[添え字番号]

data[10]は、添え字番号が10の要素を参照します。この添え字番号は、宣言文での添え字の最小値以上で、最大値以下でなければなりません。例えば、var data: array [1..100] of integerと宣言されたとき、data[0]やdata[101]はエラーになります。

先頭へ戻る

動作確認

Pascalシミュレータを使って、上のプログラムの動作を確認してみましょう。

Pascalシミュレータによる動作確認
[注意]このリンク先のページはInternet Explore 3.0以降で正しく表示されます。

レッスン17では?

これで復習は終りです。次のページでは、応用的なプログラムを見てみましょう。

[レッスン17へ]

先頭へ戻る


TitleLineAnim.gif (2453 バイト)

Ln769.gif (641 バイト)

このページの最終更新日は 99/03/20 です。
掲載責任者・ページ作成者: (c)板谷雄二(itaya@alice.asahi-u.ac.jp)