再帰
プログラム内で自身のプログラムを呼び出す形式である。 再帰プログラムを用いることで、複雑なアルゴリズムを短いプログラムで記述できる。
再帰的なプログラムのトレース
再帰的なプログラムのトレースでは、自身のプログラムを呼び出した際に「別のプログラムのトレース」と同じく、 呼出し先のトレース表を右に字下げして書くと、呼出し先の戻り値を、呼出し元に当てはめる際に、両者の対応関係がわかりやすくなる。
再帰について難しく考えがちだが、別のプログラムと再帰は、トレース方法は同じである。 両者の違いは、以下の通りである。
- 別のプログラムのトレースは、記述された呼出し先のプログラムをトレースする。
- 再帰のトレースは、自身のプログラムを別に記述されたプログラムとみなして、それをトレースする。
以下のプログラムは、プログラム rec内で、自身のプログラムrec を呼び出すため、再帰的なプログラムである。

再帰の構造図は以下の通りである。

トレース表は、以下の通りである。

(参考)
情報処理教科書 出るとこだけ!基本情報技術者[科目B]第4版 橋本 祐史 (著) 翔泳社


コメント