兔子从第三个月开始下一对崽子,然后以后每个月都下一对,假设兔子不死,并且他们的崽子也是这样的,问N月后一共多少只兔子?
经典兔子问题——Java中递归方法的使用
一、首先我们看一下题目要求
二、对题目进行简要分析:
月份
兔子数量
1
1(原来的兔子)
2
1(原来的兔子)
3
2(原来的兔子+原来的生下的一对)
4
3(原来的兔子+原来的生下的两对)
5
5(原来的兔子+原来的生下的三对+三月份的兔子生下的一对)
总结
从第三个月开始,每月的兔子都是f(month-1)+f(month-2)只
三、具体代码实现方法
1.递归的实现
//定义一个方法 public static int sum(int month) { //判断是否为1,2月份 if(month==1 || month==2) {//是,输出1只 return 1; }else {//否,按递归计算 return sum(month-1)+sum(month-2); } }
2.方法的调用
//程序入口 public static void main(String[] args) { //创建键盘扫描器 Scanner key = new Scanner(System.in); //定义一个标记 boolean flag = true; while(flag) { //提示用户输入查询的月份 System.out.println("请输入您要查询的月份:"); //接收用户输入的月份 int month = key.nextInt(); //调用方法 int num = sum(month); //按月份输出兔子数 System.out.println(month+"月共有"+num+"只兔子。"); } //关闭键盘扫描器 key.close(); }
四、运行效果图
今日就到这儿了,喜欢的朋友可以私信我哟!
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算