题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个?第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下?的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。
题目分析:
设第一天摘了n个桃子
第一天:桃子数n
第二天:桃子数n=n/2-1
第三天:桃子树n=n/2-1
......
第十天:桃子数n=1
倒推:
?第10天:桃子数n=1
第9天:桃子数n=(n+1)*2
第8天:桃子数n=(n+1)*2
......
把步骤写出来,就是个数学题,这样就非常清晰明了了
代码:
#include <stdio.h>
int main()
{
int n=1; //第10天
int i;
for(i=9;i>0;i--){ //第9,8,7,6,5,4,3,2,1天依次进入循环
n=(n+1)*2;
}
printf("第一天共摘了%d个桃子",n);
return 0;
}
第一天共摘了1534个桃子
--------------------------------
Process exited after 0.356 seconds with return value 0
请按任意键继续. . .