天天看點

農夫養牛問題

588 , 237

------------------

經典的農夫養牛問題(常考的面試題)

一個農夫養了一頭牛,三年後,這頭牛每年會生出1頭牛,生出來的牛三年後,又可以每年生出一頭牛……問農夫10年後有多少頭牛?n年呢?

假設牛不死亡的話,10年後有55頭牛。

package dailyTest;

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;

public class Test006 {

    public static void main(String[] args) {

        System.out.println("你要查詢幾年後牛的總數:");

        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

        int n;

        try {

            n = Integer.parseInt(br.readLine());

            int x = 1, y = 1;

            for(int i=0;i<n;i++) {

                if(i>=2) {                    y = x + y;

                    x = y - x;

                }

            }

            System.out.println(n + "年後總共有" + y + "頭牛");

        } catch (NumberFormatException e) {

            // TODO Auto-generated catch block

            e.printStackTrace();

        } catch (IOException e) {

            // TODO Auto-generated catch block

            e.printStackTrace();

        }

    }

}

-----------------------------------

繼續閱讀