码迷,mamicode.com
首页 > 其他好文 > 详细

求每个月兔子的总数

时间:2015-06-06 14:48:31      阅读:121      评论:0      收藏:0      [点我收藏+]

标签:

 古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
解法一:(数组) 
public class rabbit {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int a[]=new int[24];//定义一个存放24个月的数组
        a[0]=a[1]=1;
        for(int i=0;i<24;i++){
            if(i==1||i==0)
            System.out.println("第"+(i+1)+"个月兔子的数量为"+1+"对");
            else{
                a[i]=a[i-1]+a[i-2];
                System.out.println("第"+(i+1)+"个月兔子的数量为"+a[i]+"对");
            }
        }
    }
}

运行结果:

技术分享
第1个月兔子的数量为1对
第2个月兔子的数量为1对
第3个月兔子的数量为2对
第4个月兔子的数量为3对
第5个月兔子的数量为5对
第6个月兔子的数量为8对
第7个月兔子的数量为13对
第8个月兔子的数量为21对
第9个月兔子的数量为34对
第10个月兔子的数量为55对
第11个月兔子的数量为89对
第12个月兔子的数量为144对
第13个月兔子的数量为233对
第14个月兔子的数量为377对
第15个月兔子的数量为610对
第16个月兔子的数量为987对
第17个月兔子的数量为1597对
第18个月兔子的数量为2584对
第19个月兔子的数量为4181对
第20个月兔子的数量为6765对
第21个月兔子的数量为10946对
第22个月兔子的数量为17711对
第23个月兔子的数量为28657对
第24个月兔子的数量为46368对
运行结果

 解法二:(不用数组)

 

public class rabbit2 {
    public static void main(String[] args) {
        long f1,f2;
        f1=f2=1;
        for(int i=0;i<24;i=i+2){
            if(i==0||i==1){
                System.out.println("第1个月兔子的数量为:1对");
                System.out.println("第2个月兔子的数量为:1对");
            }
            else{
                f1=f1+f2;
                f2=f1+f2;
                System.out.println("第"+(i+1)+"个月兔子的数量为"+f1+"对");
                System.out.println("第"+(i+2)+"个月兔子的数量为"+f2+"对");
            }
        }
    }
}

 

求每个月兔子的总数

标签:

原文地址:http://www.cnblogs.com/cailingsunny/p/4556572.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!