プログラミングは「何(What)」と「どのように(How)」を具体化して最終的にはコード化(プログラミング言語で表現すること)し、動作を確認することです。
この単純なシナリオは、複数のモジュールからなる大きなプログラムでも、数十行の小さなプログラムでも区別なく当てはまります。
シナリオの説明には、大きなプログラムを用いるのがより効果的ですが、執筆する側も読む側も相当のエネルギーが必要になりますので、「10進小数から2進小数への変換」という小さなプログラムを用います。
先ず、「10進小数から2進小数への変換」の考え方は次の通りです。下図は「ビットから始めるプログラミング」からの引用。
例として、10進小数0.43の2進小数を求めてみましょう。この例では、8ビットまで求めています。
それでは、「10進小数から2進小数への変換」プログラムを作成しましょう。
次の図はこのプログラムの機能仕様です。プログラムの「何(What)」について書いています。
機能仕様に書かれた「何(What)」を「どのように(How)」実現するかについては、大きなプログラムの場合、構造仕様を書いてブレークダウンしますが、今回のような小さなプログラムでは構造仕様を飛ばして、詳細仕様について書きます。下の図は「10進整数から2進整数への変換」プログラムの詳細仕様です。
続いてコード化しますが、次の図はプログラミング言語Pythonを用いてコード化しています。
(プログラムコードのpdfファイルへのリンク、txtファイルへのリンク)