兔子问题--斐波那契数列--递归--面向过程编程
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);
}
}
//这是一个菲波拉契数列问题
/**
*
*/
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);
}
}
相关文章推荐
- 【C/C++学院】0817-递归汉诺塔 双层递归 /CPP结构体 /面向过程与面向对象的编程模式/类的常识共用体实现一个类的特征/QT应用于类以及类的常识
- 递归求斐波那契数列的兔子问题
- 递归解决-兔子问题-斐波那契数列
- 递归---斐波那契数列。兔子问题
- 斐波那契数列问题-兔子繁衍问题-c语言-c++-经典问题-编程
- 递归实现猴子吃桃问题与兔子生产问题(斐波那契数列)
- 面试问题 面向对象和面向过程编程的一些区别
- java编程经典案例之基于斐波那契数列解决兔子问题实例
- Python基础-面向对象和面向过程编程区别
- 生兔子问题(递归思想)
- C 编程过程中的一些问题及解决办法
- 编程思想:面向对象和面向过程
- 面向对象的编程和面向过程的编程有什么区别
- 编程思想:面向对象和面向过程
- 对Python新手编程过程中如何规避一些常见问题的建议
- 迭代器、生成器、面向过程编程(day4)
- 生兔子的问题(斐波那契数列)
- java编程:斐波那契数列经典案例:兔子问题
- ccs平台 28335mcu 编程过程中出现RAM不够的问题,修改.cmd文件扩容
- 兔子数量问题(斐波那契数列)