猴子吃桃(C语言)
1.问题描述
猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天早上又将第一天剩下的桃子吃掉一半,又多吃一个。以后每天早上都吃了前一天剩下的一半零一个。到第十天早上想吃时,发现只剩下一个了。求猴子第一天共摘了多少个桃子。
2.问题思考
从数学角度出发,该问题从“第10天剩下的1个桃子”下手。可设当天所吃桃子数为n,前一天所吃桃子数为m,得m-(m/2+1)=n,求得m=(n+1)*2.
3.问题实现
(1)定义day,n,m为基本整型,并为day和n赋值9和1.
(2)使用while语句由后向前推出第一天摘得桃子数。
(3)输出结果。
代码实现:
#include <stdio.h>
int main()
{
int day=9,m,n=1;
while(day>0)
{
m=(n+1)*2;
n=m;
day--;
}
printf("the total is %d.\n",m);
return 0;
}
本文出自 “探IT精英路者” 博客,谢绝转载!
原文地址:http://1154915583.blog.51cto.com/10798650/1704189