猴子吃桃子問題:猴子第一天摘下若干個桃子,當時就吃了一半,還不過癮,就又吃了一個。第二天又將剩下的桃子吃掉一半,又多吃了一個。以後每天都吃前一天剩下的一半零一個。到第10天在想吃的時候就剩一個桃子了,求第一天共摘下來多少個桃子?
用C語言編程解決這個問題要弄清第二天剩的桃子數量和頭一天剩餘桃子數量的關係:
從第10天剩餘一個桃子着手,如果第九天有m+1個桃子,則第八天有2(m+1+1)個桃子,第七天有2{2(m+1+1)+1},……一直到第一天剩的桃子都是其後一天加1的二倍。
#include<stdio.h>
void main()
{
int i,m=1;
for(i=1;i<10;i++)
{
m=2*(m+1);
}
printf("%d",m);
}