Java解决题目:有一对兔子,从出生第三个月起每个月都生一对兔子,小兔子长到第三个月后,每个月又生一对兔子。。。

王朝学院·作者佚名  2016-08-27
窄屏简体版  字體: 小  |  中  |  大  |  超大  

题目:有一对兔子,从出生第三个月起每个月都生一对兔子,小兔子长到第三个月后,每个月又生一对兔子,假如兔子都不死,问M个月时兔子的数量,M为键盘读入的正整数。(请用java语言作答)

样例输入:

3

样例输出:

第1个月的兔子对数:1

第2个月的兔子对数:1

第3个月的兔子对数:2

代码示例:

import java.util.Scanner;

/**

* @author ForeverLover

*/

public class Rabbit {

public static void main(String[] args) {

long s1 = 1;

long s2 = 1;

int count;

long temp;

Scanner in = new Scanner(System.in);

count = in.nextInt();

for (int i = 1; i <= count; i++) {

if (i == 1) {

System.out.PRintln("第" + i + "个月的兔子对数:" + s1);

continue;

} else if (i == 2) {

System.out.println("第" + i + "个月的兔子对数:" + s2);

continue;

} else {

temp = s2;

s2 = s1 + s2;

s1 = temp;

System.out.println("第" + i + "个月的兔子对数:" + s2);

}

}

}

}

注:这涉及到的是斐波那契数列,公式:S(n)=S(n-1)+S(n-2)

所谓斐波那切数列,又称黄金分割数列,是指这样的一个数列0、1、1、2、3、5、8、13、21、34、……(当然我们这里是从1开始),具体详细介绍请点我

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航