フローチャートを C プログラムに変換

先ほどの図を, すなおに C 言語になおすと以下のようになろう:
main()
{
  int sum, i;
  sum = 0;
  i = 1;
  while(i <= 10){
    sum = sum + i;
    i = i + 1;
  }
  printf("%d\n", sum);
}
フローチャートでは「繰返し」というのは記号としては存在しないので, 上向きの矢印が繰返しであることを人間が判断してプログラムに変換する必要がある.

また, もう少しフローチャートをよくみると, 繰返しの構文として while ではなく for が使えることがわかるので, 最終的には次のように 簡潔に書ける.

main()
{
  int sum, i;
  sum = 0;
  for(i = 1; i <= 10; i++){
    sum = sum + i;
  }
  printf("%d\n", sum);
}

この「繰返しの読みとり」は難しそうに思えるが, プログラムの設計のために自分でフローチャートを書く場合には, 「ここは繰返しである」などは当然わかっているのだから, プログラムに直す時にそれほどの労力はいらない.

しかし, そのような「繰返しの認識」などがないままフローチャートを 書いてしまうと, プログラムに変換できなかったり, 読みにくいプログラムになってしまうという問題点がある. これをフローチャートの欠点と見る立場もあるが, その後のプログラムへの変換を念頭においてフローチャートを書くのであれば 問題ないだろう.


prev index next