1.遞歸過程一般通過函數或子過程來實現。遞歸方法:在函數或子過程的內部,直接或者間接地調用自己的算法。
具體舉例
常見的問題是 n!的計算問題
顯舉例出peach問題
2.小猴子第一天摘下若干桃子,當即吃掉一半,又多吃一個.第二天早上又將剩下的桃子吃一半,又多吃一個.以後每天早上吃前一天剩下的一半另一個.到第10天早上猴子想再吃時發現只剩下一個桃子了問第一天猴子共摘多少個桃子?
#include <iostream>
using namespace std;
int peachsum(int day) //聲明函數
{if(day==15)
return 1;
return (peachsum(day+1)+1)*2; 、、自己調用自己
}
int main()
{int day=1;
cout<<peachsum(1)<<endl;
return 0;
}
題目3:
有雌雄一對兔子,假定過兩個月便可每個月繁殖雌雄各一的一對小兔子。問過n個月後共有多少對兔子?
#include <iostream>
using namespace std;
int tuzi(int month)
{if(month==0||month==1)
return 1;
return tuzi(month-1)+tuzi(month-2);
}
int main()
{
int month;
cin>>month;
cout<<"一共多少對兔子="<<tuzi<<endl;
return 0;
} //程序還需修改