用Java編程計算猴子吃桃問題


猴子吃桃問題:
猴子吃桃子問題:猴子第一天摘下N個桃子,當時就吃了一半,還不過癮,就又吃了一個。第二天又將剩下的桃子吃掉一半,又多吃了一個。以后每天都吃前一天剩下的一半零一個。到第10天在想吃的時候就剩一個桃子了,求第一天共摘下來多少個桃子?

分析:
假如每天有x個桃子,猴子吃了一半加一個,就是吃了x/2+1個,那么剩余x-(x/2+1)=x/2-1個;
這樣,第二天有x/2-1個桃子供當天使用。
我們可以看出這么一個規律:今天的桃子個數+1再乘2等於昨天的桃子個數;用上面的表達式就是( x/2-1   +1 )*2=x。
如此,只要知道了最后一天的桃子個數,知道了最后一天是第幾天,就可以逆推出第一天總共多少個桃子了-----我當時就是如此逆推的。

 

用java實現,代碼如下:

public class test2 {

    public static void main(String[] args){
        int t = 1;   
        for(int i=1;i<10;i++){
            t=(t+1)*2;                        
        }
        System.out.println("the initial number of peachs is:"+t);
    }

}

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM