Module: サブルーチン。再帰


Problem

2/8

再帰。サイクルシミュレーション

Theory Click to read/hide

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

Problem

以下のプログラムを検討し、メイン プログラムでパラメータ i=1、n=10 でプロシージャ コールを発行します。 <プレ> //2 つのパラメータを持つ LoopImitation() プロシージャ //最初のパラメーター –ステップ カウンター、2 番目のパラメーター –総ステップ数 手続き LoopImitation(i, n:整数); 始める     writeln('こんにちは N ', i); // i の任意の値に対して繰り返される演算子    もし私が< n then //ループ カウンタが値 n と等しくなるまで、         LoopImitation(i + 1, n); // パラメータ i+1 を使用してプロシージャの新しいインスタンスを呼び出します (次の値 i への遷移) 終わり; 始める     // ここでは、パラメータ i=1、n=10 でプロシージャ コールを発行する必要があります 終わり。