猴子吃桃问题

 

猴子吃桃问题。猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天又将剩下的桃子吃掉了一半,又多吃了一个。以后每天将前一天剩下的桃子吃掉一半,再多吃一个。直到第十天只剩下一个桃子了,求第一天共摘了多少个桃子。

package psw;
public class 猴子和桃子问题 {//递归算法
 static    int fun(int n) {//n为第几天的天数
       if(n==10) {
           return 1;
       }
       else
           return (fun(n+1)+1)*2;//逆用特殊代表一般过来(fun(2)+1)*2=f(1),向前开始执行的吗?
    }
    
 public static void main(String args[]) {
     int total=0;
//     int n=1;
     total=fun(1);
     System.out.println("第一天的桃子总数为="+total);
 }
}
输出结果:第一天的桃子总数=1534

 

posted on 2018-06-14 22:55  马家升  阅读(151)  评论(0编辑  收藏  举报