基因牛

/*
标题:基因牛
内容:
基因牛

张教授采用基因干预技术成功培养出一头母牛,三年后,这头母牛每年会生出1头母牛,
生出来的母牛三年后,又可以每年生出一头母牛。如此循环下去,请问张教授n年后有多少头母牛?
以下程序模拟了这个过程,请填写缺失的代码。

把填空的答案(仅填空处的答案,不包括题面)存入考生文件夹下对应题号的“解答.txt”中即可。

public static class Cow
{
private int age;
public Cow afterYear()
{
age++;
return age > 2 ? new Cow() : ___________;
}

public static void showTotalCowNum(int n)
{
List<Cow> list = new ArrayList<Cow>();
list.add(new Cow());

for (int i = 0; i < n; i++)
{
int cowCount = list.size();
for (int j = 0; j < cowCount; j++)
{
Cow cow = list.get(j).afterYear(); // 填空
if (cow != null)
{
________________;
list.add(cow);
}
}
}
System.out.println(n + "年后,共有:" + list.size());
}
}
*/
 

import java.util.ArrayList;
import java.util.List;

public class Cow 
    {
        private int age;
        public Cow afterYear()//这里定义了一个方法,而下面却一直没有出现,所以推断肯定填空处要调用这个方法,
        {
            age++;
            return age > 2 ? new Cow() : null;
        }    
        
        public static void showTotalCowNum(int n)
        {
            List<Cow> list = new ArrayList<Cow>();
            list.add(new Cow());

            for (int i = 0; i < n; i++)
            {
                int cowCount = list.size();
                for (int j = 0; j < cowCount; j++)
                {
                    Cow cow = list.get(j).afterYear(); // 填空
                    if (cow != null)
                    {
                        cow.age++; 
                        list.add(cow);
                    }
                }
            }
            System.out.println(n + "年后,共有:" + list.size());        
        }
        
        public static void main(String[] args){
            for(int i=0;i<20;i++){
                
                Cow.showTotalCowNum(i);
            }
            
        }
    }

 

/*

斐波那契数列,不难,

 E get(int index)
返回列表中指定位置的元素。 


*/

posted on 2013-05-03 10:20  wsxjbcy  阅读(293)  评论(0编辑  收藏  举报

导航