フローチャートってなぁに?~プロセスと各ステップ、アルゴリズムについて~

記事
IT・テクノロジー
どうも、元プログラマーのいーでむ希鏡です。
今回は、フローチャートについてできるだけわかりやすく解説していこうと
思います!
と思ったのですが書いていくうちにボリュームが多くなってしまったので分割することにしました!

wikipediaでは、フローチャートについてこのように説明されていました。

「フローチャート(flowchart, 流れ図)は、プロセスの各ステップ箱で表し、流れをそれらの箱の間の矢印で表すことで、アルゴリズムやプロセスを表現する図である。」

「....どういうこと!?」となるかもしれません(笑)
でも大丈夫です!一つずつ見ていけばそんなに難しくありません!!
そしてこれを学ぶとプログラムを作る際にかなり役に立ちます!
なぜなら、プログラムを作る際にあれこれ考えずにフローチャート通りに作ればほとんど自身の考えた通りに動いてくれます。

プロセスと各ステップについて

ではまず最初に出てくる「プロセスの各ステップ」について説明します。
この「プロセス」というもの...
簡単に例を挙げるとすると「自販機でコーラを買う」という目的のことを指します。
※画像はイメージです (2).png
そして「各ステップ」というのは、この例で行くと
※画像はイメージです (3).png
こんな感じになります。
つまり「プロセスの各ステップ」とは、「目標とそれを行うための過程」という風に置き換えることができるのです!

アルゴリズムについて

途中の箱や矢印については説明が長くなってしまうので次回にして、そのあとにあるアルゴリズムについて簡単に説明しますね。

まず、先ほど例に挙げた「自販機でコーラを買う」という例の中で「各ステップ」としてリストアップしたものがあると思います。
なんか妙に詳しく書きすぎだなと感じた方もいらっしゃるかもしれません。
「自販機まで歩いていく」なんて書かなくても分かるから書かなくていいじゃん!!と思いますよね?
そう、この部分がアルゴリズムでは大事な部分です!
私は、プログラムを学んでいくうちにあることを思い始めました。
それは、「機械って頭のいいバカなんだ!!」と(笑)
例えば、貴方と機械が家の中にいて、貴方が機械に「コーラ買ってきて」とお願いするとしましょう。
そうすると機械は次に何をするかというと、その場で自販機を探し始めるんです!
当然、家の中に自販機がある家はそうそう多くないでしょう。
その場で見つからないと機械は「やばい...自販機見つからない!!」となって固まってしまうんですね(これがいわゆる無限ループとかフリーズになります)
※画像はイメージです (4).png

※画像はイメージです (5).png

それを防ぐために細かく行動を指示していかなければならないんです。
※画像はイメージです (6).png

こういう細かく指示を考えることアルゴリズムといいます。

以上がプロセスと各ステップ、アルゴリズムについての解説になります。
アルゴリズムについては、ソート方法などがあるのですがC言語を学ぶ時点では今回解説したことだけ押さえておけば簡単なプログラムは作れます!!

次回は、今回説明を飛ばした箱と矢印について解説していきます!!
ではまた次回に!!
でわ~~~
サービス数40万件のスキルマーケット、あなたにぴったりのサービスを探す