再帰とは、サブルーチンに含まれる命令を繰り返し実行することです。そして、これはサイクルの働きに似ています。 Prolog など、ループ構造がまったくないプログラミング言語もあります。
for ループの動作をシミュレートしてみましょう。
for ループにはステップ カウンター変数が含まれています。再帰サブルーチンでは、このような変数をパラメーターとして渡すことができます。
//2 つのパラメータを持つ LoopImitation() プロシージャ
//最初のパラメーター –ステップ カウンター、2 番目のパラメーター –総ステップ数
void LoopImitation(int i, int n)
{
cout << 「こんにちはN」 <<私は <<エンドル; // i の任意の値に対して繰り返される演算子
if (i < n) //ループ カウンターが値 n に等しくなるまで、
{ // i+1 パラメータを使用してプロシージャの新しいインスタンスを呼び出します (次の i 値に移動します)
LoopImitation(i+1, n);
}
}プレ>