「再帰」の版間の差分

手続きや関数といった概念をもつ[[プログラミング言語]]では、ある手続き中で再びその手続き自身を呼び出すことを認める場合が多い。これを'''再帰呼出し'''といい、[[階乗]]計算や[[フィボナッチ数列]]のように、本来再帰的な構造をもつ[[アルゴリズム]](再帰的アルゴリズム)を記述するのに適している。<!-- 再帰のことを[[帰納]]という場合もある。← 上と重複している。-->
 
再帰呼出しが実装されていない言語もある[[BASIC]]、戻りアドレスを固定の場所に記録しているなど。かなり昔の[[FORTRAN]]などではそういう実装もあった)。また引数やグラマーカル変数、スタ無いため効果的に再帰呼出しを利用できない言語(クラシックな[[BASIC]]等)では、配列を利用してスタックを実装し、それを使って再帰と同様の効果的な処理えられ実現する。
 
複数の手続き/関数が互いに相手を呼ぶ場合も、広い意味での再帰呼出し([[相互再帰]])である。[[Pascal]] での例: