こんにちは、みやびのです。
今回は、Pythonコードからフローチャートを作成する手順について説明します。
フローチャートはプログラムの処理の流れを図としてまとめたものです。
フローチャートに処理をまとめることで、プログラムの処理をより理解しやすくなります
考え方や描き方は決して難しくないので、ざっくりといいので作り方を覚えておきましょう。
本記事の内容は以下の通り。

・Pythonコードからフローチャートを描く手順
・フローチャートを作ったら処理の流れを見直そう

Pythonコードからフローチャートを描く手順

フローチャート
初心者が0からフローチャートを起こすのは難しいです。なのでまずはソースコードからフローチャートを起こす練習をしましょう。

フローチャートの作成手順

フローチャートをソースコードから描く手順は以下の通りです。

・処理をブロックに分ける
・ブロックをフローチャートに入れ込む
・詳細な処理を追加

以下の簡単なプログラムをフローチャートにしていきます。

# パラメータ
a = 1
b = 2
# 初期化
c = 0
d = 0
# メイン処理1
if a > 0:
    c = 1
else:
    c = 2
# メイン処理2
for i in range(0, b):
    d += 1
# 出力
print(c)
print(d)

1.処理をブロックに分ける
ざっくりとでよいのでソースコードをブロック単位に分割します。
上記コードの場合はコメントの部分で分割します。

# ブロック1:パラメータ
a = 1
b = 2
# ブロック2:初期化
c = 0
d = 0
# ブロック3:メイン処理1
if a > 0:
    c = 1
else:
    c = 2
# ブロック4:メイン処理2
for i in range(0, b):
    d += 1
# ブロック5:出力
print(c)
print(d)

2.ブロックをフローチャートに入れ込む
まずはブロック単位でフローチャートを作成します。
フローチャート1
3.詳細な処理を追加
詳細の処理を入れ込んでいきます。
ブロック単位で考えると作りやすいです。
フローチャート2
上記は結構細かく書いていますが、処理の流れがわかればもう少し大雑把でもOKです。
各図形の意味は以下の通り。
図形の意味
別の描き方もありますし、自分で処理が理解できれば問題ないので上記描き方にこだわる必要はありません。
自分の理解しやすい図にまとめましょう。

フローチャートは完璧を目指さなくてOK

フローチャートは完璧を目指さなくてよいです
おおまかな処理と条件が理解できれば問題ありません。
もちろん「必要な処理は入っているか?」、「条件分岐は正しいか?」といったことは正確に描いた方がよいですが、「この場合この記号を使うのは正しいか?」、「条件分岐の時はどの図形を使えばよい?」など図形や記号の使い方の正確さまでを考える必要はありません。
フローチャートはプログラムの理解を助ける道具であって、時間を割くような重要なものではないです。
完璧なフローチャートを描く時間があるなら、その時間を使ってプログラムをたくさん書きましょう

フローチャートを作ったら処理の流れを見直そう

見直す
フローチャートを図にするだけでも理解を深める助けになりますが、フローチャートの内容を見直すことでプログラムの改善すべき点が見えてきます。
作っただけで終わらせずに処理全体を見直しましょう。

冗長な処理がないかチェックしよう

長いプログラムを書いた場合は特にですが、プログラムを書いていると冗長な処理(同じような処理)がいくつもできてしまうことがあります。
冗長な処理はソースコードを見ているだけだとなかなか見つけることができませんが、フローチャートにすればプログラム全体が見やすくなるので見つけやすくなります
冗長な処理は機能アップデートや不具合が起きた場合に修正箇所が多くなるので、できる限り減らすことが大事です。
冗長なコードが見つかった場合は関数やメソッドにできないか検討しましょう。

処理の順序をチェックしよう

現在の処理順が妥当かチェックすることも大事です。
プログラムの処理順によっては余計な処理や読み込みが発生するので応答時間に影響します。
「プログラムの処理はマイクロ秒という非常に短い単位で行われているので影響が少ないのではないか?」
と思うかもしれませんが、何度も呼び出される関数やループ文がある関数においては1回1マイクロ秒の無駄も馬鹿にできません。
性能の影響が少ないプログラムであっても常に「この順番の場合余計な処理や読み込みが発生しないか」ということを意識するようにしましょう。

繰り返しや分岐条件をチェックする

ソースコードだとネストが深い判定やループ文などは見にくいですが、フローチャートにすることで条件がかなり見やすくなります。

・条件に抜けがないか
・不要な条件がないか
・必要以上にループしていないか

といったことも判断しやすくなるので処理の抜けが減らせます。

終わりに

フローチャートなどの図を活用できればプログラムの処理を整理できるので理解もしやすくなります
ソースコードでは見えにくかった冗長な処理や足りない条件なども見つけやすくなるので、プログラムを書いたらフローチャートも描いてみましょう。
最初は手書きの簡単な図でよいですし、記号や図形の意味が正しいかなどは気にする必要はありません。
もちろん人に見せる場合はルールに合わせたものの方がよいですが、自分だけが確認するものであれば問題なしです。
プログラムの理解をより深めるためにうまく活用していきましょう。
おすすめ記事PythonにおすすめのノートPC4選+パソコンの選び方
Pythonの勉強法>>Python入門者のための100日勉強方法