您的位置:首页 > 编程语言

兔子问题--斐波那契数列--递归--面向过程编程

2018-02-05 11:30 357 查看
    题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?   

      //这是一个菲波拉契数列问题

/**
*
*/
package topic;

import java.util.Scanner;

/**
* @author xpz
*
*/
public class Topic01 {

/**
* @param args
*/
public static void main(String[] args) {
//01题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,
//小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
//斐波那契数列,递归,面向过程编程
try {
int mouth = 0;
System.out.println("你需要查询第几个月兔子数");
Scanner sc =new Scanner(System.in);
mouth=sc.nextInt();
System.out.println("第"+mouth+"个月兔子对数:"+getRabbit(mouth));
} catch (Exception e) {
System.err.println("月数输入有误!");
}
}
//递归,n=(n-1)+(n-2),归n=1,n=2
static int getRabbit(int mouth){
if(1==mouth||2==mouth)
return 1;
else
return getRabbit(mouth-1)+getRabbit(mouth-2);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息