#13853: 用遞迴的方式解題


xch53172 (帥氣跳蚤蛋)


小弟最近在練習遞迴,因此將原本的三層迴圈轉為遞迴,讓想學遞迴的朋友可以參考。

 

int main()
{

cal(0, 0, 0);//進入遞迴

return 0;
}

/*

for(int x=0;x<number;x++)

    for(int y=0;y<number;y++)

         for(int z=0;z<number;z++)

              {

                 ........

               }

*/

 

void cal(int x, int y, int z)//遞迴
{

........

 

  if (z < number - 1)//最內層迴圈
  {
    cal(x, y, z + 1);
    return;
  }
  if (y < number - 1)
  {
    cal(x, y + 1, 0);
    return;
  }
  if (x < number - 1)//最外層迴圈
  {
    cal(x + 1, 0, 0);
  }

}