3 [例題7]繰り返し処理とサブルーチン

3.1 教科書の例

教科書の[例題6]のプログラムの動作内容は、[例題5]と全く同じである。ただし、最大値 を探索する部分をサブルーチンにして、プログラムの内容を分かりやすくしている。

3.2 サブルーチン

プログラムは、分かりやすく書かなくてはならない。分かりにくいプログラムはメンテナ ンスが大変である。ここでは、最大値を探す機能をサブルーチンとして分割している。

実際、サブルーチンを作成するとにもっとも気にかけることは、データの受け渡しである 2。 メインルーチンからサブルーチンに、ある処理を依頼するのであるが、そのためにはデー タが必要である。メイン $ \rightarrow$サブ、メイン $ \leftarrow$サブと2通りある。高級 言語ではいろいろな方法があるが、CASL IIでは汎用レジスターを使うのが一般的である。

例題のプログラムを例にすると、

3.3 プログラムの構造とフローチャート

データを取り扱うレジスターやラベルの内容を表1と同じである。 また、プログラムのフローチャートを図3に示す。。
図 3: 教科書のList5-7のプログラムの構造とフローチャート
\includegraphics[keepaspectratio, scale=0.8]{flow_chart/REI5-7.eps}



ホームページ: Yamamoto's laboratory
著者: 山本昌志
Yamamoto Masashi
平成17年1月26日


no counter