平成25年度 春期 ITパスポート試験 公開問題 問53 解説 アルゴリズムの定義
コンピュータを利用するとき,アルゴリズムは重要である。アルゴリズムの説明として,適切なものはどれか。
- ア コンピュータが直接実行可能な機械語に,プログラムを変換するソフトウェア
- イ コンピュータに,ある特定の目的を達成させるための処理手順 ✓ 正答
- ウ コンピュータに対する一連の動作を指示するための人工言語の総称
- エ コンピュータを使って,建築物や工業製品などの設計をすること
解説
「アルゴリズム」という言葉の定義を直接問う問題です。アルゴリズムとは一言でいえば「解決までの手順」です。選択肢の中から、「手順」という言葉が含まれているものを選べば正解に辿り着けます。
アルゴリズムの正体
アルゴリズムを日常の例に例えると、料理のレシピが最も近いです。「材料を用意する」「野菜を切る」「加熱する」「盛り付ける」といった一連の流れを守ることで、誰でも同じ料理を完成させることができます。
コンピュータの世界においても同様で、入力されたデータに対して、どのような順序で計算や処理を行えば目的の結果が得られるかを記述したものがアルゴリズムです。プログラムを書く前段階の「設計図」のようなものだとイメージしてください。
各選択肢の検討
正解以外の選択肢が何を指しているのかを知ることで、周辺知識を整理できます。
アの「コンピュータが直接実行可能な機械語に、プログラムを変換するソフトウェア」は、コンパイラやアセンブラなどの翻訳プログラムのことです。
ウの「コンピュータに対する一連の動作を指示するための人工言語の総称」は、プログラミング言語(C言語、Python、Javaなど)を指します。
エの「コンピュータを使って、建築物や工業製品などの設計をすること」は、CAD(Computer Aided Design)の説明です。
これらはすべてコンピュータ分野で頻出する用語ですが、アルゴリズムとは役割が異なります。
なぜこの知識が重要なのか
コンピュータは非常に高速に計算を行えますが、それ自体に知能があるわけではありません。人間が「こう処理しなさい」と細かな手順を教え込まない限り、コンピュータは何もできません。
例えば、「検索」という機能ひとつとっても、膨大なデータの中からどうやって効率よく目的のデータを見つけるか(探索アルゴリズム)、あるいはバラバラな数字をどうやって小さい順に並び替えるか(整列アルゴリズム)など、数々の工夫が存在します。より短時間で、より少ないメモリで処理を完了させるための効率的な手順を設計する能力は、ITエンジニアにとって最も基本的かつ重要なスキルの一つです。