これまで main で行なっていた処理を関数として分離する指針
段階的詳細化をうまく行なった場合、はじめから、関数に分離されているので、
このような作業は必要でないかも知れない。
現実に起こり得る(起こった)以下のようなことで、この作業は必要である。
1.段階的詳細化がいつも一度でうまくいくとは限らない
(はじめは単純な処理と思ってはじめたが、そうではなかった)
2.すでにあるプログラムを改造する
3.この演習の手順として、手続き(関数)の概念を後で説明した。
分離する時に考えること、すること。
(列挙しているだけであってこの順にというわけではない)
1. 独立した関数にするあるまとまった処理をの部分を切り出して、
形式上別の関数にする。
すなわち、
a)その部分を切り出して、{} で括ってブロックにする
b)関数名を考えて関数 a) のブロックを関数定義にする。
c)もとの部分に関数呼び出しを書く。
d)処理のために必要な変数定義部分をブロックに入れる。
2. 関数と呼び出し側のデータの受渡しの方法を決める。
戻す値はいくつか ( 0 1 複数 )
3. 元の関数(呼び出し側)で、不要な変数宣言を取り除く。
分離した処理と、呼び出し側に残す処理に共通の変数に注意
これらは、無関係のものを同じ変数で共同利用していたかも知れないし、
あるいは、パラメタとしてデータの受渡しが必要なものかも知れない。
戻る