【C语言】猴子吃桃问题】的更多相关文章

猴子吃桃问题之<C语言经典案例分析>一.[什么是猴子吃桃]       猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个.第二天早上又将第一天剩下的桃子吃掉一半,有多吃了一个.以后每天早上都吃了前一天剩下的一半零一个.到第 10 天早上想再吃时,发现只剩下一个桃子了.编写程序求猴子第一天摘了多少个桃子. 二.[算法实现过程](1) 定义 day.x1.x2 为基本整型,并为 day 和 x2 赋初值 9 和 1:(2) 使用 while 语句由后向前推出第一天摘的桃…
猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个.第二天早上又将第一天剩下的桃子吃掉一半,有多吃了一个.以后每天早上都吃了前一天剩下的一半零一个.到第 10 天早上想再吃时,发现只剩下一个桃子了.编写程序求猴子第一天摘了多少个桃子. #include <stdio.h> int main() { int sum,d1,d2; sum=; d2=; ) { d1=(d2+)*; /*第一天的桃子数是第二天桃子数加1的2倍*/ d2=d1; sum--; } print…
//题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个//第二天早上又将剩下的桃子吃掉一半,又多吃了一个//以后每天早上都吃了前一天剩下 的一半零一个.到第10天早上想再吃时,见只剩下一个桃子了.//求第一天共摘了多少.//n,n/2,n/2-1,...,1 public class Test { public static void main(String[] args) { System.out.println(total(1)); System.out.pri…
//猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个. //第二天早上又将第一天剩下的桃子吃掉一半,有多吃了一个.以后每天早上都吃了前一天剩下的一半零一个. //到第 10 天早上想再吃时,发现只剩下一个桃子了.编写程序求猴子第一天摘了多少个桃子. /* 分析:从第10天向第9.8.7.6.....1推算,x为当前桃子数量,当a=10时,x=1:当a=9时 2*(x+1)=4 当a=8时,2*(x+1)=2*5=10 */ #include <stdio.h> in…
猴子第一天摘了许多个桃子,先吃了所有桃子的一半,后又吃了一个:第二天又吃了剩下桃子的一半,后又吃了一个……第十天,剩1个桃子.问:猴子第一天摘了多少个桃子? 首先对“猴子吃桃”的过程进行正向推导,设:猴子第一天摘了N个桃子,第n天剩Ln个桃子.则—— L1 = N/2 - 1 L2 = L1/2 - 1/2 - 1 L3 = L2/2 - 1/2^2 - 1 ...... Ln = L(n-1)/2 - 1: 然后对“猴子吐桃”的过程进行逆向推导,因为Ln = L(n-1)/2 - 1,所以L(…
猴子吃桃问题 时间限制:3000 ms  |  内存限制:65535 KB 难度:0 描述 有一堆桃子不知数目,猴子第一天吃掉一半,又多吃了一个,第二天照此方法,吃掉剩下桃子的一半又多一个,天天如此,到第m天早上,猴子发现只剩一只桃子了,问这堆桃子原来有多少个? (m<29) 输入 第一行有一个整数n,表示有n组测试数据(从第二行开始,每一行的数据为:第m天): 输出 每一行数据是桃子的总个数 样例输入 2 3 11 样例输出 22 6142 我的程序: #include<stdio.h>…
猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个,第二天早上又将剩下的桃子吃掉一半,又多吃了一个.以后每天早上都吃了前一天剩下的一半零一个.到第10天早上想再吃时,见只剩下一个桃子了.要求输入n(1<=n<=10),输出第n天有多少个桃子: package yan04; import java.util.Scanner; public class EatPeach1 { static int SumPeach(int day) { if(day==1) return…
http://acm.ocrosoft.com/problem.php?cid=1172&pid=12 题目描述 猴子吃桃问题.猴子第1天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个.第2天早上又将剩下的桃子吃掉一半,又多吃了一个.以后每天早上都吃了前一天剩下的一半另加一个.到第n天早上想再吃时,就只剩下一个桃子了.求第1天共摘了多少个桃子 输入 n的值 输出 剩下的桃子数量 样例输入 10 样例输出 total=1534 题解:运用递归的思想,定义的A的函数代表的是第n天开始的时候所有…
题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个 第二天早上又将剩下的桃子吃掉一半,又多吃了一个.以后每天早上都吃了前一天剩下的一半零一个.到第10天早上想再吃时,见只剩下一个桃子了.求第一天共摘了多少.分析:采取逆向思维的方法,从后往前推断.假设:第九天还有x个桃,第十天就还有(x/2)-1个桃:若设第十天还有m个桃,则满足等式(x/2)-1=m反推第九天还有(m+1)*2个桃 public class Prog17 { public static void m…
猴子吃桃问题:猴子吃桃子问题:猴子第一天摘下N个桃子,当时就吃了一半,还不过瘾,就又吃了一个.第二天又将剩下的桃子吃掉一半,又多吃了一个.以后每天都吃前一天剩下的一半零一个.到第10天在想吃的时候就剩一个桃子了,求第一天共摘下来多少个桃子? 分析:假如每天有x个桃子,猴子吃了一半加一个,就是吃了x/2+1个,那么剩余x-(x/2+1)=x/2-1个:这样,第二天有x/2-1个桃子供当天使用.我们可以看出这么一个规律:今天的桃子个数+1再乘2等于昨天的桃子个数:用上面的表达式就是( x/2-1  …