配列の文法
配列要素への代入
配列要素は、変数名に続けて要素番号(添字)を( )で囲んで書きます。要素番号は、1から始まります。
プロデルの配列は、特に宣言しない限り、可変長配列として扱われ、事前に配列の個数や型を宣言する必要はありません。
添字に要素数よりも大きい値を指定して値を代入すると、その添字までの要素が自動的に確保されます。
書式
ーー文字や数値を格納する 《変数名》(《番号》)は、《式》
ーー値を取得する 《変数名》(《番号》)を表示する
例文 配列の操作
「果物」配列の1番目から3番目までに文字を格納して、順に表示しています。
果物(1)は「りんご」 果物(2)は「バナナ」 果物(3)は「ぶどう」 果物(4)は「なし」 果物(1)を表示する 果物(2)を表示する 果物(3)を表示する 果物(4)を表示する
一度に配列へ値を格納する (配列定数)
上記の例では、変数の1番目から3番目までに順番に文字を格納していますが{ }を使うことで、配列へ一度に値を格納できます。
書式
ーー配列へ一度に格納する 《変数名》は{《1番目の値》,《2番目の値》,《3番目の値》,・・・}
例文 配列へ一度に格納する
果物は{「りんご」,「バナナ」,「ぶどう」,「なし」}
果物(2)を表示する ーー「バナナ」と表示されます
明示的な配列の宣言
変数宣言式を使って明示的に変数を配列として宣言できます。
書式
【《変数名》:《型》の配列】
固定長配列
固定長配列は、要素数が予め定められた配列型です。
変数宣言式を使って配列の型と要素数を宣言できます。
書式
《型》の配列(《要素数》)を作る
例文
固定長配列の型の名前は「《型名》の配列」という形式で指定します。例えば整数型の固定長配列を作るには「整数の固定配列」と指定します。この名前で「作る」文を使ってインスタンスを作られます。「作る」文では、配列の要素数を( )で囲って指定しておきます。
【一覧】は、固定長配列(10)を作ったもの 数を1から10まで増やしながら繰り返す 一覧(数)は、数*数 繰り返し終わり 一覧(5)を表示する
「すべて」後置子
「すべて」後置子によって、配列のすべての要素に対して式が評価され(展開し)た結果を、それぞれ配列に格納できます。「すべて」後置子を指定すると「すべて」に掛かる式を含んでいる式や文が「すべて」に掛かる配列の要素それぞれだけ、評価されて、配列として表されます。
{120,160,220}すべてに1.08を掛けたものを出力する
この場合は、次の文と同じ意味となります。
ーーすべて後置子を使わない例
{120に1.08を掛けたもの,160に1.08を掛けたもの,220に1.08を掛けたもの}を出力する
「すべて」後置子は、計算演算子、設定項目、実補語に指定できます。
例文 すべて後置子で配列各要素のオブジェクトの設定項目を取得する
次の例文では「リスト」にあるすべて「注文明細」要素の「価格」のみが展開された後に、その結果を要素である配列がさらに展開されます。
Aという注文明細を作る Bという注文明細を作る Cという注文明細を作る リストは{A,B,C} リストすべての価格すべてを報告する 注文明細とは +価格=10の乱数*10 終わり
戻り値の無い手順の実補語が「すべて」を含む場合は、手順が「すべて」に掛かる配列の要素の数だけ実行されます。
上記の「リストすべての価格すべてを報告する」の部分は「リストすべての価格」の配列の要素をそれぞれ展開して手順を実行しますので、次のプログラムと内容は同じです。
ーーすべて後置子を使わない例
Aの価格を報告する
Bの価格を報告する
Cの価格を報告する