アルゴリズム - 繰返し型
 

繰返し型

 処理のある範囲を繰り返す処理である。
 繰返しは、
   @決められた回数を繰り返す。
   A条件によって繰り返すかどうかを決める。
の2通りが考えられる。また、Aの場合は繰返しの前に繰返し条件を判定する「前判定」と繰返し範囲を一度処理してから判定する「後判定」がある。

@ 左図のフローチャートでは、[Aの値出力]の処理を10回繰り返す。
 「ループ端」に書かれている数値は次のような意味である。

A = 1, 10, 1
変数 = 初期値終値増分値

 最初に、変数(A)に初期値(1)を記憶して繰返し範囲を処理する。二度目以降は変数(A)に増分値(1)を加算して終値(10)以下であれば繰返し範囲を処理する。これを終値を超えるまで繰り返す。
 
 ここでは、「ループ端」の組(ペア)がわかりやすいように記号を点線でつないで示しているが、本来はなくても良い。

A @と同じように、[Aの値出力]の処理を10回繰り返す。
 「ループ端」には終了条件を記入する。左図のフローチャートでは、A>10(Aが10より大きければ繰返し終了)である。
 終了条件が「ループ端」の終わりの方に記入されているので「後判定」ということになる。
 
 
 この例の場合は「前判定」でも「後判定」でも同じ結果になる。
 
 ※1の部分で 100 → A とすると次のようになる。
 「前判定」のフローチャートでは何も出力されない。
 「後判定」のフローチャートでは一度だけ 100 と出力される。

繰り返しのフローチャートは次の図のように、「ループ端」を使わなくても「判断」の記号で書くことができる。


二重ループ
 繰返しを入れ子にしたループである。下図のように、「ループ端」の各ペアが交差してはいけない。

=====−−−
例題 九九の表を出力する。フローチャートを作成せよ。

 変数Xが1のとき、変数Yが1から9まで変化しながら9回繰り返す。変数Xが2〜9のときもそれぞれ同じように9回ずつ繰り返す。

九九の表
1 2 3 4 5 6 7 8 9
2 4 6 8 10 12 14 16 18
3 6 9 12 15 18 21 24 27
4 8 12 16 20 24 28 32 36
5 10 15 20 25 30 35 40 45
6 12 18 24 30 36 42 48 54
7 14 21 28 35 42 49 56 62
8 16 24 32 40 48 56 64 72
9 18 27 36 45 54 63 72 81


 
Copyright © 2003 Hiroshi Masuda


inserted by FC2 system