1. 程式人生 > >【程式17】 題目:猴子吃桃問題:猴子第一天摘下若干個桃子,當即吃了一半, 還不癮,又多吃了一個 第二天早上又將剩下的桃子吃掉一半, 又多吃了一個。以後每天早上都吃了前一天剩下的一半零一個。

【程式17】 題目:猴子吃桃問題:猴子第一天摘下若干個桃子,當即吃了一半, 還不癮,又多吃了一個 第二天早上又將剩下的桃子吃掉一半, 又多吃了一個。以後每天早上都吃了前一天剩下的一半零一個。

/*
	2017年3月7日13:29:54
	java基礎50道經典練習題 例17
	Athor: ZJY
	Purpose:  
	【程式17】
	題目:猴子吃桃問題:猴子第一天摘下若干個桃子,當即吃了一半,
	還不癮,又多吃了一個 第二天早上又將剩下的桃子吃掉一半,
	又多吃了一個。以後每天早上都吃了前一天剩下的一半零一個。
	到第10天早上想再吃時,見只剩下一個桃子了。求第一天共摘了多少。
	程式分析:採取逆向思維的方法,從後往前推斷。

*/
public class ProgramNo17_1
{
	public static void main(String[] args)
	{
		System.out.printf("第一天猴子共摘了%d個桃子!\n", peachNumber(0));
	}
	private static int peachNumber(int days)
	{
		int peachs = 0;
		if(10 == days)
			peachs = 1;
		else
			peachs = peachNumber(days+1)*2+2;

		return peachs;
	}

}
/*
	2017年3月7日13:29:44
	java基礎50道經典練習題 例17
	Athor: ZJY
	Purpose:  
*/
public class ProgramNo17_2
{
	public static void main(String[] args)
	{
		int m = 1;
	  for(int i=10; i>0; i--)
	    m = 2*m + 2;
	  System.out.println("小猴子共摘了"+m+"桃子");
	}
}