フローチャートの基本構造と書き方のルールとは【第13回】

「Java入門」講座にご興味ある方はこちら。次回は9/11(月)12(火)開催です。

Flow chart of decision procedure with arrows and words in red process chart

フローチャートの基本構造と書き方のルールとは
ビジネスパーソンのためのプログラミング講座【第13回】

   

プログラムを作成するにあたって、目的の動作を達成するためのアルゴリズム、いわゆる「やり方」を考えてみましょう。 早速ソースコードを打ち始めるのではなく、まずはどのような方法どのような順序で動作を実現するかを考える必要があります。 アルゴリズムの表現方法に決まりがあるわけではありませんが、フローチャートを使用すると便利です。 そこで今回はフローチャートについてご説明いたします。

 
■フローチャートとは
フローチャートとは、四角形ひし形矢印などでプロセスを図に表したものをいいます。
プロセスを可視化するために用いられます。プログラミングだけでなく、その他の業務フローなどでも活用されています。フローチャートで用いられる図はJIS規格により標準化されています。

 
■なぜフローチャートを書くのか
「わざわざ図を書くのは時間もかかり手間、という意見もあるかと思います。
しかしフローチャートを書く方が実は効率的なのです。

フローチャートを書くメリットには次のものがあります。
・考えを整理できる
・文章の仕様書などを見ながら作成するよりもプログラミングしやすい
・可視化することにより問題に気づきやすく、戻り作業を減らせる
・バグの発生率を下げる
・後から修正を加える際も効率よくできる
・他者とも処理の流れを共有できる、分業しやすくなる


処理を可視化することでより段取りよく、漏れなく、質よくプログラム作成ができるといえそうです。
目の前のことからやり始めるのではなく、一旦全体を俯瞰してみることは何につけても大事なことです。
また、可視化することで他者から見ても処理が分かる、というメリットも大きいと思われます。

 
■フローチャートの基本構造
フローチャートは記号と矢印で構成されています。主な記号は以下の通りです。

・端子(角丸四角形):フローチャートの入口及び出口を表す
・処理(四角形):計算や代入など任意の処理を表す
・定義済み処理(四角形、両端を二重線で表す):サブルーチンなど別で定義された処理
・判断(ひし形):条件により2つに分岐する処理の流れを表す
・表示(左側に角をつけた楕円形):結果を出力する
・ループの開始(台形のように下辺の長い六角形):同一の処理を繰り返し行う範囲の始まり
・ループの終了(台形のように上辺の長い六角形):同一の処理を繰り返し行う範囲の終わり
・入出力(平行四辺形):ファイルへの入出力を表す
・ページ内結合子(円): フローチャートが長くなりページ内で2列以上に跨る時に使う
・ページ外結合子(五角形):フローチャートを次のページに続ける時に使う

フローチャートの基本構造として次の3つがあります。
◆順次構造
処理が単純に上から下へ並んでいる構造。
◆分岐構造
ある条件によって処理が分かれる構造。条件に対して真か偽か、if文など。
◆反復構造
ある条件を満たしている間、繰り返し処理を実行する構造。for、while、do whileなど。
これらの基本構造を組み合わせて、アルゴリズムを表します。

 
■フローチャートの書き方
フローチャートを書く際は前述の構造だけでなく、書き方も知っておきましょう。

1. プログラムには必ず始まりと終わりがあります。
フローチャートも始まりと終わりの端子を必ず書きます。

2. 処理の流れは上から下へ、左から右へ、を原則として書きます。
矢印の矢を省略する場合はその原則に則って処理が進むことを暗黙の了解としています。
きちんと矢印で表記していれば逆の向きで書いてもかまいません。

3. 条件分岐から出る線(矢印)にYes、Noなどを付記します。

4. 入力する線は箱の上から入るようにします。
横から入れてはいけません。

5. 矢印などの線は交差してはいけません。


また、プログラムのフローチャートは最終的に「i = i + 1」といった具合に
プログラミング言語で表すレベルまで細分化できますが、必ずしもそうする必要はありません。
特に初めはざっくりと「10になるまで繰り返す」といった表現でかまいません。
大まかな流れを書いて、それを徐々に細分化していくとうまくいくと思われます。
それに必ずしもプログラミング言語で表現せずとも日本語で書いてもいいでしょう。

 
■まとめ
いかがでしたでしょうか?
フローチャートは慣れるまでは少し面倒と思われるかもしれませんが、書いてみると非常に便利なツールです。
どんどんフローチャートを書いて効率よくプログラミングを進めましょう。

エパノの「『Java入門PHP入門、『JavaScript入門』、『Ruby入門』等の入門講座では、各々の言語で効率的にプログラミングを行うこともお教えします。ご興味ございませいたら、ぜひ。お気軽にお問い合わせください。

 
    次回ビジネスパーソンのためのプログラミング講座【第14回】ではプログラミングを行う上で重要なソースコードの書き方についてご紹介していきたいとおもいます。
>プログラミング豆知識 記事一覧へ


投稿日: 2016年11月14日

前後の記事

気になることは何でもお気軽にお問合せください。

0120-188-024 受付時間 平日9:00~19:00