猴子吃桃问题的多种求法 C++实现

来源:百度知道 编辑:UC知道 时间:2024/05/09 13:57:08
有一群猴子摘了一堆桃子,他们每天都吃当前桃子的一半且再多吃一个,到了第10天就只余下一个桃子。用多种方法实现求出原来这群猴子共摘了多少个桃子。
要求:
1) 采用数组数据结构实现上述求解
2) 采用链数据结构实现上述求解
3) 采用递归实现上述求解

多谢~~
3种方法都有的就好了

#include<stdio.h>
void main()
{
int day; static x1=1;
day=10;
while(day>0)
{
x1=(x1+1)*2;
day--;
}
printf("桃子总数=%d\n",x1);
}
这是递归.数组的要用指针才好做,要么,要先加个最佳~

#include <iostream>
using namespace std;
void main()
{
int total[10]={0,0,0,0,0,0,0,0,0,1};//一堆桃子的总数
for (int i=9; i>0; i--)
{
total[i-1]=(total[i]+1)*2;
}
for (i=0; i<9; i++)
{
cout<<"第"<<i+1<<"天的桃子数目为"<<total[i]<<"吃掉的桃子数目为"<<total[i]-total[i+1]<<endl;
}
cout<<"第十天剩余"<<total[9]<<"个桃子"<<endl;

}

//呵呵,终于把三个程序调试完毕了!
//VC++6.0下调试通过。
有一群猴子摘了一堆桃子,他们每天都吃当前桃子的一半且再多吃一个,到了第10天就只

余下一个桃子。用多种方法实现求出原来这群猴子共摘了多少个桃子。
要求:
1) 采用数组数据结构实现上述求解
#include <iostream>
using namespace std;<