黑马程序员技术交流社区

标题: 大神们,你们谁有java编程50道题的答案!!!!!! [打印本页]

作者: ninjaes    时间: 2016-1-14 20:27
标题: 大神们,你们谁有java编程50道题的答案!!!!!!
题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一
对兔子,假如兔子都不死,问每个月的兔子总数为多少?
1.程序分析: 兔子的规律为数列1,1,2,3,5,8,13,21....
【程序2】
题目:判断101-200之间有多少个素数,并输出所有素数。
1.程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,
则表明此数不是素数,反之是素数。
做了【程序3】
题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:
153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。
1.程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。
【程序4】
题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。
程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:
(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。
(2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。
(3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。
【程序5】
题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下
的用C表示。
1.程序分析:(a>b)?a:b这是条件运算符的基本例子。
【程序6】
题目:输入两个正整数m和n,求其最大公约数和最小公倍数。
1.程序分析:利用辗除法。
【程序7】
题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
1.程序分析:利用while语句,条件为输入的字符不为'\n'.
做了【程序8】
题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),
几个数相加有键盘控制。
1.程序分析:关键是计算出每一项的值。
【程序9】
题目:一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程 找出1000以内的所有完
数。
【程序10】
题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在 第10次落地时,共经过多
少米?第10次反弹多高?
【程序11】
题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
1.程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去 掉不满足条件的排列。
【程序12】
题目:企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万
元时,低于10万元的部分按10%提成,高于10万元的部分,可可提成7.5%;20万到40万之间时,高于20万元的部
分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可
提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?
1.程序分析:请利用数轴来分界,定位。注意定义时需把奖金定义成长整型。
【程序13】
题目:一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?
1.程序分析:在10万以内判断,先将该数加上100后再开方,再将该数加上268后再开方,如果开方后的结果满足
如下条件,即是结果。请看具体分析:
【程序14】
题目:输入某年某月某日,判断这一天是这一年的第几天?
1.程序分析:以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天,特殊情况,闰年且
输入月份大于3时需考虑多加一天。
【程序15】
题目:输入三个整数x,y,z,请把这三个数由小到大输出。
1.程序分析:我们想办法把最小的数放到x上,先将x与y进行比较,如果x>y则将x与y的值进行交换,然后再用x
与z进行比较,如果x>z则将x与z的值进行交换,这样能使x最小。
【程序16】
题目:输出9*9口诀。
1.程序分析:分行与列考虑,共9行9列,i控制行,j控制列。
【程序17】
题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个 第二天早上又将剩
下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下
的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。
1.程序分析:采取逆向思维的方法,从后往前推断。
【程序18】
题目:两个乒乓球队进行比赛,各出三人。甲队为a,b,c三人,乙队为x,y,z三人。已抽签决定比赛名单。有人向
队员打听比赛的名单。a说他不和x比,c说他不和x,z比,请编程序找出三队赛手的名单。
1.程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除, 则表明此数不是素数,反
之是素数。
【程序19】
题目:打印出如下图案(菱形)
    *
   ***
 ******
********
 ******
  ***
   *
1.程序分析:先把图形分成两部分来看待,前四行一个规律,后三行一个规律,利用双重 for循环,第一层控制
行,第二层控制列。
【程序20】
题目:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。
1.程序分析:请抓住分子与分母的变化规律。
【程序21】
题目:求1+2!+3!+...+20!的和
1.程序分析:此程序只是把累加变成了累乘。
【程序22】
题目:利用递归方法求5!。
1.程序分析:递归公式:fn=fn_1*4!
【程序23】
题目:有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问
第三个人,又说比第2人大两岁。问第2个人,说比第一个人大两岁。最后问第一个人,他说是10岁。请问第五个
人多大?
1.程序分析:利用递归的方法,递归分为回推和递推两个阶段。要想知道第五个人岁数,需知道第四人的岁数,
依次类推,推到第一人(10岁),再往回推。
【程序24】
题目:给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。
【程序25】
题目:一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。
【程序26】
题目:请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续 判断第二个字母。
1.程序分析:用情况语句比较好,如果第一个字母一样,则判断用情况语句或if语句判断第二个字母。
【程序27】
题目:求100之内的素数
【程序28】
题目:对10个数进行排序
1.程序分析:可以利用选择法,即从后9个比较过程中,选择一个最小的与第一个元素交换, 下次类推,即用第
二个元素与后8个进行比较,并进行交换。

作者: ninjaes    时间: 2016-1-14 20:28
【程序29】
题目:求一个3*3矩阵对角线元素之和
1.程序分析:利用双重for循环控制输入二维数组,再将a[i][i]累加后输出。
【程序30】
题目:有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。
1. 程序分析:首先判断此数是否大于最后一个数,然后再考虑插入中间的数的情况,插入后此元素之后的数,
依次后移一个位置。
做完【程序31】
题目:将一个数组逆序输出。
1.程序分析:用第一个与最后一个交换。
【程序32】
题目:取一个整数a从右端开始的4~7位。
程序分析:可以这样考虑:
(1)先使a右移4位。
(2)设置一个低4位全为1,其余全为0的数。可用~(~0<<4)
(3)将上面二者进行&运算。
【程序33】
题目:打印出杨辉三角形(要求打印出10行如下图)
1.程序分析:
        1
       1 1
     1 2 1
    1 3 3 1
   1 4 6 4 1
1 5 10 10 5 1
【程序34】
题目:输入3个数a,b,c,按大小顺序输出。
1.程序分析:利用指针方法。
【程序35】
题目:输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。
【程序36】
题目:有n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面的m个数
【程序37】
题目:有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下
的是原来第几号的那位。
【程序38】
题目:写一个函数,求一个字符串的长度,在main函数中输入字符串,并输出其长度。
【程序39】
题目:编写一个函数,输入n为偶数时,调用函数求1/2+1/4+...+1/n,当输入n为奇数时,调用函数
1/1+1/3+...+1/n(利用指针函数)
【程序40】
题目:字符串排序。
【程序41】
题目:海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子凭据分为五份,多了一个,这只猴子把多的一
个扔入海中,拿走了一份。第二只猴子把剩下的桃子又平均分成五份,又多了一个,它同样把多的一个扔入海中
,拿走了一份,第三、第四、第五只猴子都是这样做的,问海滩上原来最少有多少个桃子?
【程序42】
题目:809*??=800*??+9*??+1
其中??代表的两位数,8*??的结果为两位数,9*??的结果为3位数。求??代表的两位数,及809*??后的结果。
【程序43】
题目:求0—7所能组成的奇数个数。
【程序44】
题目:一个偶数总能表示为两个素数之和。
【程序45】
题目:判断一个素数能被几个9整除
【程序46】
题目:两个字符串连接程序
做完【程序47】
题目:读取7个数(1—50)的整数值,每读取一个值,程序打印出该值个数的*。
【程序48】
题目:某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字
都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。
做完【程序49】
题目:计算字符串中子串出现的次数
【程序50】
题目:有五个学生,每个学生有3门课的成绩,从键盘输入以上数据(包括学生号,姓名,三门课成绩),计算出平均成绩,况原有的数据和计算出的平均分数存放在磁盘文件"stud"中。
作者: iori    时间: 2016-1-14 20:58
我有啊,怎么你想要?
作者: iori    时间: 2016-1-14 20:59
0道JAVA基础编程练习题
【程序1】
题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子对数为多少?
程序分析: 兔子的规律为数列1,1,2,3,5,8,13,21....
public class Prog1{
        public static void main(String[] args){
                int n = 10;
                System.out.println("第"+n+"个月兔子总数为"+fun(n));
        }
        private static int fun(int n){
                if(n==1 || n==2)
                   return 1;
                else
                   return fun(n-1)+fun(n-2);
        }
}
【程序2】
题目:判断101-200之间有多少个素数,并输出所有素数。
程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。
public class Prog2{
        public static void main(String[] args){
                int m = 1;
                int n = 1000;
                int count = 0;
                //统计素数个数
                for(int i=m;i<n;i++){
                        if(isPrime(i)){
                                count++;
                                System.out.print(i+" ");
                                if(count%10==0){
                                        System.out.println();
                                }
                        }
                }
                System.out.println();
                System.out.println("在"+m+"和"+n+"之间共有"+count+"个素数");
        }
        //判断素数
        private static boolean isPrime(int n){
                boolean flag = true;
                if(n==1)
                  flag = false;
                else{
                        for(int i=2;i<=Math.sqrt(n);i++){
                        if((n%i)==0 || n==1){
                                flag = false;
                                break;
                        }
                         else
                           flag = true;
                  }
                }
                return flag;
        }
}
作者: ninjaes    时间: 2016-2-25 09:03
iori 发表于 2016-1-14 20:58
我有啊,怎么你想要?

还有吗? 谢谢 好人一生平安
作者: 赵雄    时间: 2016-2-25 11:55
我怎么什么都不知道,感觉out了
作者: ma464526717    时间: 2016-2-25 22:24
程序3】 题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。  程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。 public class Prog3{         public static void main(String[] args){                 for(int i=100;i<1000;i++){                         if(isLotus(i))                            System.out.print(i+" ");                 }                 System.out.println();         }         //判断水仙花数         private static boolean isLotus(int lotus){                 int m = 0;                 int n = lotus;                 int sum = 0;                 m = n/100;                 n  -= m*100;                 sum = m*m*m;                 m = n/10;                 n -= m*10;                 sum += m*m*m + n*n*n;                 if(sum==lotus)                         return true;                 else                         return false;                 } } 【程序4】 题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。 程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成: (1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。 (2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数n,重复执行第一步。 (3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。 public class Prog4{         public static void main(String[] args){                 int n = 13;                 decompose(n);         }         private static void decompose(int n){                 System.out.print(n+"=");                 for(int i=2;i<n+1;i++){                         while(n%i==0 && n!=i){                                 n/=i;                                 System.out.print(i+"*");                         }                         if(n==i){                                 System.out.println(i);                                 break;                         }                 }         } } 【程序5】 题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。 程序分析:(a>b)?a:b这是条件运算符的基本例子。  public class Prog5{         public static void main(String[] args){                 int n = -1;                 try{                         n = Integer.parseInt(args[0]);                 }catch(ArrayIndexOutOfBoundsException e){                         System.out.println("请输入成绩");                         return;                 }                 grade(n);         }         //成绩等级计算         private static void grade(int n){                 if(n>100 || n<0)                   System.out.println("输入无效");                 else{                   String str = (n>=90)?"分,属于A等":((n>60)?"分,属于B等":"分,属于C等");                   System.out.println(n+str);                 }         } }
作者: cat73    时间: 2016-2-25 23:44
本帖最后由 cat73 于 2016-2-25 23:45 编辑

Python 代码,感觉算法题 Python 或者 Javascript 这类脚本语言更合适一些。
这套代码的好处在于易于扩展,将每个月视为一个 Tick,这样假如加一个条件,比如兔子 20 个月后会死,只需要在 Rabbit 类的 doMonth 里加一行判断,再在 Main 里判断下死亡即可。
  1. """
  2. 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一
  3. 对兔子,假如兔子都不死,问每个月的兔子总数为多少?
  4. 1.程序分析: 兔子的规律为数列1,1,2,3,5,8,13,21....
  5. """

  6. # 兔子类
  7. class Rabbit():
  8.     # 兔子的年龄(月)
  9.     age = 0

  10.     # 判断兔子是否可以生小兔子
  11.     def canMultiply(self):
  12.         return self.age > 3

  13.     # doTick
  14.     def doMonth(self):
  15.         self.age += 1

  16. # 主类
  17. class Main():
  18.     # 兔子列表
  19.     rabbits = []

  20.     # 初始化主类
  21.     # rabbit_count 初始兔子数量
  22.     def __init__(self, rabbit_count):
  23.         for i in range(rabbit_count):
  24.             self.addRabbit()

  25.     # 添加一只新的小兔子
  26.     def addRabbit(self):
  27.         self.rabbits.append(Rabbit())

  28.     # doTick
  29.     def doMonth(self):
  30.         multiply = 0
  31.         for i in range(self.getRabbitCount()):
  32.             self.rabbits[i].doMonth()
  33.             if self.rabbits[i].canMultiply():
  34.                 multiply += 1
  35.                 if multiply == 2:
  36.                     multiply = 0
  37.                     self.addRabbit()

  38.     # 获取当前有多少只兔子
  39.     def getRabbitCount(self):
  40.         return len(self.rabbits)

  41. # 测试代码
  42. if __name__ == "__main__":
  43.     main = Main(2);
  44.     for i in range(1, 51):
  45.         main.doMonth()
  46.         print("%d: %d" % (i, main.getRabbitCount()))
复制代码

  1. 1: 2
  2. 2: 2
  3. 3: 2
  4. 4: 3
  5. 5: 4
  6. 6: 5
  7. 7: 6
  8. 8: 7
  9. 9: 9
  10. 10: 11
  11. 11: 14
  12. 12: 17
  13. 13: 21
  14. 14: 26
  15. 15: 33
  16. 16: 41
  17. 17: 51
  18. 18: 64
  19. 19: 80
  20. 20: 100
  21. 21: 125
  22. 22: 157
  23. 23: 197
  24. 24: 247
  25. 25: 309
  26. 26: 387
  27. 27: 485
  28. 28: 608
  29. 29: 762
  30. 30: 955
  31. 31: 1197
  32. 32: 1501
  33. 33: 1882
  34. 34: 2359
  35. 35: 2957
  36. 36: 3707
  37. 37: 4648
  38. 38: 5827
  39. 39: 7305
  40. 40: 9158
  41. 41: 11482
  42. 42: 14395
  43. 43: 18047
  44. 44: 22626
  45. 45: 28367
  46. 46: 35564
  47. 47: 44587
  48. 48: 55900
  49. 49: 70083
  50. 50: 87865
复制代码

作者: cat73    时间: 2016-2-26 00:04
后续可以扩展比如兔子有公母啦、天敌杀掉的兔子数啦、食物不足饿死啦、食物充足可以一窝生俩啦之类的。
当然这份代码还有一点不好的地方,生殖应该由兔子类搞定而不是 Main 类,0 点了- - 懒得改了- - 就酱吧- -
随机死亡如果开始几个月做种的那俩挂了就 GG 惹- -
  1. """
  2. 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,兔子最多可以活 22 个月(年龄越大死亡率越高),问每个月的兔子总数为多少?
  3. """
  4. import random

  5. # 兔子类
  6. class Rabbit():
  7.     # 兔子的年龄(月)
  8.     age = 0
  9.     # 兔子是否死亡
  10.     die = False
  11.     # 兔子的最大年龄
  12.     MAX_AGE = 22

  13.     # 判断兔子是否可以生小兔子
  14.     def canMultiply(self):
  15.         return self.age > 3

  16.     # 判断兔子是否死亡
  17.     def hasDie(self):
  18.         return self.die

  19.     # doTick
  20.     def doMonth(self):
  21.         self.age += 1

  22.         # 兔子死亡
  23.         if random.randint(self.age, self.MAX_AGE) == self.MAX_AGE:
  24.             self.die = True

  25. # 主类
  26. class Main():
  27.     # 兔子列表
  28.     rabbits = []
  29.     lastMonthDie = 0
  30.     lastMonthMultiply = 0

  31.     # 初始化主类
  32.     # rabbit_count 初始兔子数量
  33.     def __init__(self, rabbit_count):
  34.         for i in range(rabbit_count):
  35.             self.addRabbit()

  36.     # 添加一只新的小兔子
  37.     def addRabbit(self):
  38.         self.rabbits.append(Rabbit())

  39.     # doTick
  40.     def doMonth(self):
  41.         self.lastMonthDie = 0
  42.         self.lastMonthMultiply = 0
  43.    
  44.         multiply = 0
  45.         i = 0
  46.         while i < self.getRabbitCount():
  47.             self.rabbits[i].doMonth()
  48.             # 如果兔子死亡了则删掉
  49.             if self.rabbits[i].hasDie():
  50.                 del self.rabbits[i]
  51.                 i -= 1
  52.                 self.lastMonthDie += 1
  53.             else:
  54.               # 如果兔子可以生殖
  55.               if self.rabbits[i].canMultiply():
  56.                   multiply += 1
  57.                   # 凑够俩可以生的兔子则生小兔子
  58.                   if multiply == 2:
  59.                       multiply = 0
  60.                       self.addRabbit()
  61.                       self.lastMonthMultiply += 1

  62.             i += 1

  63.     # 获取当前有多少只兔子
  64.     def getRabbitCount(self):
  65.         return len(self.rabbits)

  66.     # 获取上个月新增了多少只小兔子
  67.     def getLastMonthMultiply(self):
  68.         return self.lastMonthMultiply

  69.     # 获取上个月死亡了多少只兔子
  70.     def getLastMonthDie(self):
  71.         return self.lastMonthDie

  72. # 测试代码
  73. if __name__ == "__main__":
  74.     main = Main(2);
  75.     for i in range(1, 31):
  76.         main.doMonth()
  77.         print("现在是第 %d 个月, 剩余兔子: %d, 上个月新增小兔子: %d, 上个月死亡兔子: %s" % (i, main.getRabbitCount(), main.getLastMonthMultiply(), main.getLastMonthDie()))
复制代码

  1. 现在是第 1 个月, 剩余兔子: 2, 上个月新增小兔子: 0, 上个月死亡兔子: 0
  2. 现在是第 2 个月, 剩余兔子: 2, 上个月新增小兔子: 0, 上个月死亡兔子: 0
  3. 现在是第 3 个月, 剩余兔子: 2, 上个月新增小兔子: 0, 上个月死亡兔子: 0
  4. 现在是第 4 个月, 剩余兔子: 3, 上个月新增小兔子: 1, 上个月死亡兔子: 0
  5. 现在是第 5 个月, 剩余兔子: 4, 上个月新增小兔子: 1, 上个月死亡兔子: 0
  6. 现在是第 6 个月, 剩余兔子: 5, 上个月新增小兔子: 1, 上个月死亡兔子: 0
  7. 现在是第 7 个月, 剩余兔子: 5, 上个月新增小兔子: 1, 上个月死亡兔子: 1
  8. 现在是第 8 个月, 剩余兔子: 7, 上个月新增小兔子: 2, 上个月死亡兔子: 0
  9. 现在是第 9 个月, 剩余兔子: 8, 上个月新增小兔子: 2, 上个月死亡兔子: 1
  10. 现在是第 10 个月, 剩余兔子: 9, 上个月新增小兔子: 3, 上个月死亡兔子: 2
  11. 现在是第 11 个月, 剩余兔子: 12, 上个月新增小兔子: 3, 上个月死亡兔子: 0
  12. 现在是第 12 个月, 剩余兔子: 13, 上个月新增小兔子: 3, 上个月死亡兔子: 2
  13. 现在是第 13 个月, 剩余兔子: 16, 上个月新增小兔子: 4, 上个月死亡兔子: 1
  14. 现在是第 14 个月, 剩余兔子: 19, 上个月新增小兔子: 5, 上个月死亡兔子: 2
  15. 现在是第 15 个月, 剩余兔子: 24, 上个月新增小兔子: 5, 上个月死亡兔子: 0
  16. 现在是第 16 个月, 剩余兔子: 29, 上个月新增小兔子: 7, 上个月死亡兔子: 2
  17. 现在是第 17 个月, 剩余兔子: 33, 上个月新增小兔子: 8, 上个月死亡兔子: 4
  18. 现在是第 18 个月, 剩余兔子: 40, 上个月新增小兔子: 9, 上个月死亡兔子: 2
  19. 现在是第 19 个月, 剩余兔子: 48, 上个月新增小兔子: 12, 上个月死亡兔子: 4
  20. 现在是第 20 个月, 剩余兔子: 58, 上个月新增小兔子: 13, 上个月死亡兔子: 3
  21. 现在是第 21 个月, 剩余兔子: 72, 上个月新增小兔子: 17, 上个月死亡兔子: 3
  22. 现在是第 22 个月, 剩余兔子: 90, 上个月新增小兔子: 22, 上个月死亡兔子: 4
  23. 现在是第 23 个月, 剩余兔子: 109, 上个月新增小兔子: 27, 上个月死亡兔子: 8
  24. 现在是第 24 个月, 剩余兔子: 131, 上个月新增小兔子: 30, 上个月死亡兔子: 8
  25. 现在是第 25 个月, 剩余兔子: 166, 上个月新增小兔子: 39, 上个月死亡兔子: 4
  26. 现在是第 26 个月, 剩余兔子: 211, 上个月新增小兔子: 51, 上个月死亡兔子: 6
  27. 现在是第 27 个月, 剩余兔子: 253, 上个月新增小兔子: 62, 上个月死亡兔子: 20
  28. 现在是第 28 个月, 剩余兔子: 307, 上个月新增小兔子: 73, 上个月死亡兔子: 19
  29. 现在是第 29 个月, 剩余兔子: 378, 上个月新增小兔子: 90, 上个月死亡兔子: 19
  30. 现在是第 30 个月, 剩余兔子: 456, 上个月新增小兔子: 111, 上个月死亡兔子: 33
复制代码
  1. 现在是第 1 个月, 剩余兔子: 2, 上个月新增小兔子: 0, 上个月死亡兔子: 0
  2. 现在是第 2 个月, 剩余兔子: 2, 上个月新增小兔子: 0, 上个月死亡兔子: 0
  3. 现在是第 3 个月, 剩余兔子: 2, 上个月新增小兔子: 0, 上个月死亡兔子: 0
  4. 现在是第 4 个月, 剩余兔子: 3, 上个月新增小兔子: 1, 上个月死亡兔子: 0
  5. 现在是第 5 个月, 剩余兔子: 4, 上个月新增小兔子: 1, 上个月死亡兔子: 0
  6. 现在是第 6 个月, 剩余兔子: 5, 上个月新增小兔子: 1, 上个月死亡兔子: 0
  7. 现在是第 7 个月, 剩余兔子: 5, 上个月新增小兔子: 1, 上个月死亡兔子: 1
  8. 现在是第 8 个月, 剩余兔子: 7, 上个月新增小兔子: 2, 上个月死亡兔子: 0
  9. 现在是第 9 个月, 剩余兔子: 7, 上个月新增小兔子: 1, 上个月死亡兔子: 1
  10. 现在是第 10 个月, 剩余兔子: 8, 上个月新增小兔子: 2, 上个月死亡兔子: 1
  11. 现在是第 11 个月, 剩余兔子: 10, 上个月新增小兔子: 2, 上个月死亡兔子: 0
  12. 现在是第 12 个月, 剩余兔子: 11, 上个月新增小兔子: 2, 上个月死亡兔子: 1
  13. 现在是第 13 个月, 剩余兔子: 13, 上个月新增小兔子: 3, 上个月死亡兔子: 1
  14. 现在是第 14 个月, 剩余兔子: 17, 上个月新增小兔子: 4, 上个月死亡兔子: 0
  15. 现在是第 15 个月, 剩余兔子: 19, 上个月新增小兔子: 4, 上个月死亡兔子: 2
  16. 现在是第 16 个月, 剩余兔子: 21, 上个月新增小兔子: 5, 上个月死亡兔子: 3
  17. 现在是第 17 个月, 剩余兔子: 28, 上个月新增小兔子: 7, 上个月死亡兔子: 0
  18. 现在是第 18 个月, 剩余兔子: 36, 上个月新增小兔子: 9, 上个月死亡兔子: 1
  19. 现在是第 19 个月, 剩余兔子: 44, 上个月新增小兔子: 10, 上个月死亡兔子: 2
  20. 现在是第 20 个月, 剩余兔子: 53, 上个月新增小兔子: 12, 上个月死亡兔子: 3
  21. 现在是第 21 个月, 剩余兔子: 60, 上个月新增小兔子: 14, 上个月死亡兔子: 7
  22. 现在是第 22 个月, 剩余兔子: 71, 上个月新增小兔子: 17, 上个月死亡兔子: 6
  23. 现在是第 23 个月, 剩余兔子: 90, 上个月新增小兔子: 22, 上个月死亡兔子: 3
  24. 现在是第 24 个月, 剩余兔子: 111, 上个月新增小兔子: 24, 上个月死亡兔子: 3
  25. 现在是第 25 个月, 剩余兔子: 132, 上个月新增小兔子: 29, 上个月死亡兔子: 8
  26. 现在是第 26 个月, 剩余兔子: 155, 上个月新增小兔子: 35, 上个月死亡兔子: 12
  27. 现在是第 27 个月, 剩余兔子: 189, 上个月新增小兔子: 44, 上个月死亡兔子: 10
  28. 现在是第 28 个月, 剩余兔子: 219, 上个月新增小兔子: 49, 上个月死亡兔子: 19
  29. 现在是第 29 个月, 剩余兔子: 257, 上个月新增小兔子: 61, 上个月死亡兔子: 23
  30. 现在是第 30 个月, 剩余兔子: 312, 上个月新增小兔子: 74, 上个月死亡兔子: 19
复制代码

作者: ninjaes    时间: 2016-2-26 17:29
cat73 发表于 2016-2-26 00:04
后续可以扩展比如兔子有公母啦、天敌杀掉的兔子数啦、食物不足饿死啦、食物充足可以一窝生俩啦之类的。
当 ...

能用java





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2