Python.use(better)

前の記事記事一覧次の記事
Python.use(better)


実録:はじめてのプログラミング《08》

スケール課題(4)構造化プログラミング

「スケール課題」で学んだ、構造化プログラミング〔structured programming; SP〕の基本構造をまとめて紹介します。


note 正規表現
連接 コードを記述した順に処理を実行します。
選択 ある条件を満たすかどうかで、どちらか一方の処理を実行します。 これは、ある条件のもとで、A と B のどちから一方が実行されることを意味します。
反復 ある条件を満たすかぎりは、指定した処理を繰り返し実行します。 これは、ある条件のもとで、A が 0 回以上繰り返して実行されることを意味します。
□□

これは「列挙、場合分け、数学的帰納法という指針に沿って、プログラムは作成される」という考えに基づくものです。この指針に従うなら、プログラムは、連接〔sequence〕選択〔selection〕反復〔iteration〕によって構成するのが良いとされてきました。



ただし、連接では、その処理がコードを記述した順番に「依存するかどうか」を規定するものではありません。つまり、これだけでは、並列処理が可能かどうかを区別できません。左側では、処理の順序に依存して「同じ結果が得られない」可能性があります。右側(並列処理)では、処理の順序に依存せずに「同じ結果が得られる」ことを想定しています。
また「スケール課題」で作成した関数 scale の制御構造を図解すると、次のようになります。



また、これを正規表現では、

   A(B(C|(D|))E)*

と記述できます。

Tips


Last updated♪09/03/05