プログラムの構想を考えてプログラミングしよう

アルゴリズムを考えよう

プログラムは何か問題を解決したり、便利にしたり、楽しんだりするために作るわけですが、その手順・解決方法を「アルゴリズム」と言います。

たとえば授業のノートで、どこに復習したい項目が書いてあったか忘れてしまった場合、どうやってそのページを探せばよいでしょう。

1ページ目から順にめくっていけば、いずれ目的のページにたどり着けますが、後ろの方に書いてあると、かなり時間がかかってしまいます。真ん中あたりのページを開いて、前の方だったか、後ろの方だったか見当を付けて探していけば、それよりはずっと早く見つけることができるでしょう。目次や索引を作っておくと、一発で目的のページを開くことができますが、目次や索引を作るのも手間ですね。

プログラミングの本を読むと、並び替えや検索といった基本的な手順について、いろいろなアルゴリズムが紹介されているでしょう。簡単で分かりやすいけれど、並び替えるデータが多くなるとすごく時間がかかってしまうアルゴリズムや、データが多くても早く並び替えることができるけど、考え方が難しいアルゴリズムなど、それぞれ一長一短があります。

ただ、スクラッチやマイクロビットでプログラミングするときに、そういった基礎的なアルゴリズムを意識する必要はあまりないです。パイソンやジャバスクリプトなど本格的なプログラミング言語を使うときも、並び替えや検索といった機能はあらかじめ用意されており、プログラマーはそれを呼び出すだけで済んでしまうからです。

基本的なアルゴリズムも、プログラミングを本格的に勉強するには必要になりますが、まずは問題解決のための手順、目的のためのアルゴリズムを見つけることが大切です。

ページの先頭へ