「アルゴリズム」と聞くと複雑な数式を思い浮かべがちですが、私たちの身の回りにはアルゴリズムで動いている仕組みが無数に存在します。
代表的な例が「料理のレシピ」です。レシピは以下のような構造を持っています。
- 入力(インプット):野菜、肉、調味料などの材料
- 処理(プロセス):切る、炒める、煮込むという順番の処理手順
- 出力(アウトプット):完成した料理
この一連の手順を視覚的に整理したものがフローチャート(処理手順図)です。「もし野菜に火が通っていなければ、さらに2分煮込む」「火が通っていれば、ルーを入れて弱火にする」といった条件分岐(IF文)を組み立てる作業は、プログラミングにおけるアルゴリズム設計と全く同じ構造をしています。
駅の自動販売機でお釣りを計算する手順や、カーナビが渋滞情報・距離・料金を天秤にかけて最短ルートを導き出す計算も、すべてあらかじめプログラムされたアルゴリズムの働きによるものです。