兔子繁殖问题:
兔子从出生的第三个月开始繁殖,此后每个月都会繁殖,且每次繁殖都为一对异性兔子。
在封闭环境中,有一对异性刚出生的兔子,不考虑死亡,求一年后有多少对兔子。

//通过观察可以发现
//当前月的可生育兔子=上个月的可生育兔子+上上个月新兔子
//第三个月开始生育之后:每个月的新兔子=可生育兔子
//每个月的兔子总数为:当前可生育+当月新兔子+上个月新兔子
//得出公式F(n)=F(n-1)+F(n-2)

不用公式计算

 //不用数组int x=0;//上上个月新兔子int b=1;//上个月可生育兔子for(int y=1;y<13;y++ ){if(y<3){//一月,二月不生育System.out.println("第"+y+"个月有"+b+"只兔子");}else if(y==3){//三月后一个月没有增加可生育兔子System.out.println("第"+y+"个月有"+(b+b+x)+"只兔子");}else {//三月之后进行当前可生育兔子运算int s=x+b;//当前可生育兔子x=b;//把x变为上个月可生育,参与下次运算时即为上上个月新兔子b=s;//把b变为当前月可生育,参与下次运算时即为上个月可生育兔子System.out.println("第"+y+"个月有"+(s+s+x)+"只兔子");}    }

   //用数组方式int [] tz=new int [13];//存放计算出的每个月兔子总数for(int a=0;a<12;a++){if(a<2){//先确定一月和二月的总数tz[a]=1;System.out.println("第"+(a+1)+"个月有"+tz[a]+"只兔子");}else{//再计算之后每个月的值tz[a]=tz[a-1]+tz[a-2];System.out.println("第"+(a+1)+"个月有"+tz[a]+"只兔子");}}

采取F(n)=F(n-1)+F(n-2)的方式计算

    //数组方式int [] zs=new int[3];//存放n-2,n-1,n的数值zs[0]=1;//n-2的数值zs[1]=1;//n-1的数值System.out.println("第1个月有"+zs[0]+"只兔子");System.out.println("第2个月有"+zs[1]+"只兔子");for(int c=3;c<13;c++){zs[2]=zs[0]+zs[1];//n的数值zs[0]=zs[1];zs[1]=zs[2];System.out.println("第"+c+"个月有"+zs[2]+"只兔子");}

    //不用数组int a1=1;//n-2的数值int a2=1;//n-1的数值int a3;System.out.println("第1个月有1只兔子");System.out.println("第2个月有1只兔子");for(b=3;b<13;b++){a3=a1+a2;//n的数值a1=a2;a2=a3;System.out.println("第"+b+"个月有"+a3+"只兔子");}

多种方式解决兔子繁殖问题相关推荐

  1. Java多种方式解决生产者消费者问题(十分详细)

    一.问题描述 生产者消费者问题(Producer-consumer problem),也称有限缓冲问题(Bounded-buffer problem),是一个多线程同步问题的经典案例.生产者生成一定量 ...

  2. 多种方式解决Java控制台报错 java.util.LinkedHashMap cannot be cast to.....

    问题描述 今天在使用RestTemplate调用服务的时候,因为服务提供者返回的是一个List集合,所以在使用消费者调用的时候,restTemplate.getForObject()期待返回的类型直接 ...

  3. 全网多种方式解决The requested resource [/] is not available的错误

    文章目录 1. 复现错误 2. 分析错误 3. 解决错误 3.1 本地项目 3.2 线上项目 4. 此错误的其他解决方法 1. 复现错误 曾记得,当初使用idea来写Java web项目时,常常因为T ...

  4. python递归算法解决兔子繁殖问题_经典生兔子问题——递归方法

    例题: 有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子.假如兔子都不死,要求输出一年内兔子的数量是多少. 分析: 该题是典型的斐波那契数列的一个实例应用. 我 ...

  5. 使用java实现多种方式解决图片压缩的问题

    前段时间在使用对图片加水印后,由于需加水印的图片的宽度和高度都非常的大,加了水印后图片从几百KB,变成了几MB,严重影响了图片在页面的加载速度! 经过仔细的琢磨,决定先对图片进行压缩,再加水印.采用这 ...

  6. 全网多种方式解决Unchecked runtime.lastError: The message port closed before a response was received的错误

    文章目录 1. 文章引言 2. 分析问题 3. 解决问题 4. 解决该错误的其他方法 1. 文章引言 今天启动项目后访问Knife4j接口文档,却报出下图错误: 在报出Knife4j文档请求异常错误时 ...

  7. 兔子繁殖问题,梯推算法(C++)

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 题目: 问题描述:一对兔子从出生以后第三个月开始,每月生一堆小兔子.小兔子到第三个月又开始生下一代小兔子.假若兔子之生不死,一月份抱来 ...

  8. idea打包jar的多种方式,依赖解决方式

    idea打包jar的多种方式 依赖解决方式 https://www.cnblogs.com/dinghong-jo/p/7873646.html 这里总结出用IDEA打包jar包的多种方式,以后的项目 ...

  9. 兔子繁殖问题(python递归解决)

    兔子繁殖问题 古典问题:有一-对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个服生一对兔子,假如兔子都不死,用户输入-一个月份数,计算并在- - -行内输出该月的兔子总对数以及前 ...

最新文章

  1. 企业支付宝账号开发接口实现
  2. php 通过stomp协议连接ActiveMQ
  3. 一个 MVC 框架以 MVVM 之「魂」复活了!
  4. BZOJ 4808: 马(二分图最大点独立集)
  5. 【源码】常用的人脸识别数据库以及上篇性别识别源码
  6. java实现远程系统控制_java实现电脑远程控制完整源代码
  7. 1007 素数对猜想(C语言)
  8. 机器视觉打光方案(纽扣电池胶纸)
  9. 外网live Meeting客户端无法连接到会议
  10. STM32硬核DIY机械键盘|蓝牙USB双模|灯控
  11. 计算机存储程序控制工作原理教案,计算机的存储程序工作原理是什么
  12. 牛客刷题<19>使用3-8译码器实现逻辑函数
  13. python rot13_PHP str_rot13() 函数
  14. 半年成长 —— 任平生
  15. SPI总线通信——基于STM32MP157A
  16. Suzy找到实习了吗Day 17 | 二叉树进行中:110. 平衡二叉树,257 二叉树的所有路径,404. 左叶子之和
  17. 一点、两点、三点透视投影的python3实现-计算机图形学
  18. 全网最全的35个微信小游戏
  19. Windows程序员初学Linux内核(附Linux内核各版本历史纪年表)
  20. 1377:最优乘车(travel)

热门文章

  1. Java获取某个字符在指定字符串中出现的第N次的位置
  2. 商业思维是每个互联网人都应具备的升维能力
  3. INVOKE expression [, arguments]
  4. 汽车VIN编码的详细规则
  5. 系统工程 软件工程(第三版)SCAU
  6. java 实现组合_排列组合算法(JAVA实现)
  7. UltraEdit 脚本命令
  8. 【小程序】小程序组件-1
  9. 我想带你去浪漫的土耳其
  10. iOS 获取屏幕亮度和调整屏幕亮度的方法