流れ図の書き方(表操作)
日常生活の中でも我々は、よく表なるものを見かける。
例えば、時刻表、日程表、成績表、売上実績表、…………
コンピュータ処理に於いても、この表の概念を導入して効率的なデータ処理が行えるようにしている。
尚、コンピュータ用処理記述言語によって呼称が違いますが、表(Table)又は、配列(Array)と呼んでいる。
表を構成している一つ一つのデータ項目を表要素(Table-Element)と言う。
この表要素を参照等する場合に添字(Subscript)又は指標(Index)を用いる。
1 2 3 4 5 6 7 8 9 10 表の大きさは、10
25 36 11 32 81 15 52 77 18 64 表要素名:X
  X(1)   X(10)
この様に表要素名に()を付けて、その()の中に表の何番目かを示す為の添字を記述する。
添字とは、代数的に表現したXiのiを示している。このXiをX(i)と表しているだけです。
また、表には上図の様な一次元の表だけでなく
1 2 3 4 5 6 7 8 9 10 表の大きさは、10×3
1 25 36 11 32 81 15 52 77 18 64 表要素名:Y
2 18 42
35
64 88 69 72 49 33 27
3 84 67 36 45 21 19 48 56 42
23
Y(3,2) Y(10,3)
の様に二次元の表もあり、更に三次元以上の表も取り扱うことが出来ます。
二次元の場合、表は、行と列で表現できるので、通常、横方向を行、縦方向を列と呼んでいる。(代数の行列)
例題.大きさが5の一次元の表Tの各要素に値0を保存する。
0→T(1)
0→T(2)
0→T(3)
0→T(4)
0→T(5)
この様にそれぞれの要素に値を保存する式を記述するとなると大きな表を扱うのは大変である。
この様な表を取り扱うために添字を変数にして繰り返し処理で表す事が出来るようになっている。
例えば、BASIC言語では、
for i = 1 to 5
T(i) = 0
next i
の様に記述する事で表Tの各要素に値0が保存できる。
この様な記述であれば表の大きさに依存しないので、各言語で同様の記述が出来るようになっています。
補足.二次元の表X(m,n)とX(n,m)とは表全体の大きさ(m×n)は同じですが、要素の並びは違います。
  この要素の並びは、使用する言語で決められています。
行→列の場合 列→行の場合
X(m,n)の要素の並び X(n,m)の要素の並び X(m,n)の要素の並び X(n,m)の要素の並び
X(1,1) X(1,1) X(1,1) X(1,1)
X(2,1) X(2,1) X(1,2) X(1,2)
       
X(m,1) X(n,1) X(1,n) X(1,m)
X(1,2) X(1,2) X(2,1) X(2,1)
X(2,2) X(2,2) X(2,2) X(2,2)
       
X(m,2) X(n,2) X(2,n) X(2,m)
X(1,3) X(1,3) X(3,1) X(3,1)
       
       
X(m,n) X(n,m) X(m,n) X(n,m)
流れ図の書き方(表操作)
表操作を流れ図で記述する場合には、繰り返し処理の終了条件の表し方を工夫しています。
(例)大きさ10の一次元の表Tの各要素に値をT(1)=1,T(2)=2,T(3)=3,……,T(10)=10の様に
  i番目の要素に値iを保存する。
了条件「i=1 TO 10」は、iの初期値が1で最大10迄1ずつ増やしながら繰り返す事を表す。
(終了条件ではなく、繰り返しの有効範囲を示す。)
尚、増分値(+でも-でも可)が1以外の場合は、その増分値も含めて表します。
(例)初期値2で2ずつ増やしながら20迄繰り返す。
(例)初期値100で2ずつ減らしながら0迄繰り返す。
二次元の場合には、繰り返し処理が二重になります。
(例)大きさ10×10の二次元の表Tに値を以下の様に保存する。
T(i,i)=1 但し1≦i≦10
T(i,j)=0 但しi≠jで1≦i≦10,1≦j≦10
内側の繰り返し範囲
外側の繰り返し範囲