已知:斐波那契数列的前几个数分别为0,1,1,2,3,5…从第三项开始,每一项都等于前两项的和.请接收用户输入的整数n,求出此数列的前n项.

效果如图:

思路://              0,       1,       1,      2,      3,     5...
           //第一次 num1 num2 num3                                  num3=num1+num2;
           //第二次           num1 num2 num3                        num3=num1+num2;

直接定义出num1和num2并赋值为0,1;再定义个num3,放在循环中如上所示进行计算。

代码及详情如下:

        //        0,   1,   1,   2,   3,   5...//第一次 num1 num2 num3  //第二次      num1 num2 num3//……依次后移,就是我们循环体的意思,最后第n项就是num3int num1=0,num2=1,num3=0; //num3用规律算,不直接赋值出来System.out.println("请输入你要测试的数:");Scanner scanner=new Scanner(System.in);int n=scanner.nextInt();//接收用户输入的数//判断输入的数有无问题if(n<1)System.out.println("输入错误!退出!");//判断输入的数是否是前两个,因为前两个数我们直接知道且无法用规律算if(n==1)System.out.println("第"+n+"项为:"+num1);if(n==2) {System.out.println("第"+n+"项为:"+num2);//输出值System.out.println("该排列为:"+num1+","+num2);//输出排列}if(n>2){//第三个数开始System.out.print("该排列为:"+num1+","+num2);//将后面的排列与前面的排列拼接在一起for(int i=2;i<n;i++) {num3=num1+num2;num1=num2;num2=num3;System.out.print(","+num3);}}//输出第n项的值System.out.println();//第n项值和排列中间换个行System.out.println("第"+n+"项为:"+num3);}

然后我们再看一道经典题目:

古典问题(兔子生崽):有一对兔子,从出生后第3个月起每个月都生一对兔子,
小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,
问每个月的兔子总数为多少?(输出前40个月即可)
程序分析:兔子的规律为数列1, 1, 2, 3, 5, 8, 13, 21....,
即下个月是上两个月之和(从第三个月开始)。

结果如下图:

代码及详情如下:

//程序分析:兔子的规律为数列1, 1, 2, 3, 5, 8, 13, 21....,
//即下个月是上两个月之和(从第三个月开始)。
//要求:一行只打印五个月的兔子数
int num1=1,num2=1,num3=0; //num3用规律算,不直接赋值出来
int count=0;//计数器,记一行打印了多少次
System.out.printf("%12d%12d",num1,num2);
//前两个月的兔子数直接输出,因为数据太大所以用%12d固定
count=count+2;//这里打印了两个月的所以加个2,也可以直接在定义时初始化为2
for(int i=2;i<40;i++) { //从三月开始输出前四十个月的每月兔子数num3=num1+num2;num1=num2;num2=num3;System.out.printf("%12d",num3);count++;if(count==5){System.out.println(); //一排打印了五个就换行count=0; //然后将count重置为0,继续下一行的打印计数}
}

想设置一个好看的eclipse背景? 超详细图文介绍

Java基础——斐波那契数列问题之兔子不死会有几只兔子相关推荐

  1. java判断斐波那契数列_Java 实例 - 斐波那契数列

    Java 实例 - 斐波那契数列 斐波那契数列指的是这样一个数列 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,377,610,987,1597, ...

  2. Java实现斐波那契数列Fibonacci

    import java.util.Scanner; public class Fibonacci {public static void main(String[] args) {// TODO Au ...

  3. Think in Java之斐波那契数列

    斐波纳契数列(Fibonacci Sequence),又称黄金分割数列. 指的是这样一个数列:1.1.2.3.5.8.13.21.--这个数列从第三项开始,每一项都等于前两项之和. 在数学上,斐波纳契 ...

  4. 【java】斐波那契数列

    开门见山 斐波那契数列(Fibonacci sequence),又称黄金分割数列,因数学家莱昂纳多·斐波那契(Leonardo Fibonacci)以兔子繁殖为例子而引入,故又称为"兔子数列 ...

  5. java实现斐波拉契数列

    package algorithm.cxg.Fibonacci;import java.util.Scanner;/*** 实现斐波拉切函数* 斐波拉切数列:* 由0和1开始,之后的费波那西系数就由之 ...

  6. Java实现斐波那契数列与黄金分割比精确位数问题

    题目: 打印输出斐波拉契数列的位数,以及对应的黄金分割值的准确位数,例如(11,4),既是利用11位的斐波拉契数列计算得到的黄金分割数可以准确到小数点后四位.设定一个具体的精确度(例如小数点后10位) ...

  7. JAVA实现斐波那契数列问题(《剑指offer》)

    题目描述: 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项. 传说中的斐波那契数列问题,经典中的经典: 做多了基于斐波那契数列问题的变形题目,现在要干撸斐波那契数列,突然 ...

  8. 语言运行泰博那契数列_波浪理论的数字基础-斐波那契数列

    波浪理论数学结构-斐波那契数列与黄金分割率 波浪理论的推动浪,浪形为5(1.2.3.4.5),调整浪的浪型为3(a/b/c),合起来为8.若把波浪细化,大的推动浪又可分为1.3.5浪为推动.2.4为调 ...

  9. java解决斐波那契数列(Fibonacci sequence)

    斐波那契数列(Fibonacci sequence)的定义:斐波那契数列指的是这样一个数列 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,377,610 ...

最新文章

  1. linux设置关闭省电模式
  2. python参数_python参数的介绍
  3. 前端学习(2962):前一天回顾
  4. EXT.NET复杂布局(二)——报表
  5. TVM:交叉编译和RPC
  6. 详解pager-taglib-2.0配合SSH分页
  7. 有了这款低代码工具,开发可以告别996啦
  8. html5中event获取data和class
  9. linux学习笔记-文件属性基本知识
  10. web渗透测试----14、CSRF(跨站请求伪造攻击)
  11. jq ui-selectable中click单击事件,dblclick双击事件无效
  12. 云计算机资源池,IaaS云资源池-云计算.PDF
  13. [Joy]冷笑话急转弯
  14. echarts图例动态置灰
  15. 英伟达 Magic3D:一句话生成3D模型,分辨率清晰8倍,速度快2倍,编辑文本还可直接修改...
  16. 月入3w+,6年经验测试开发工程师,见识到了真正意义上的测试天花板
  17. Proteus 中 Virtual Terminal无法自动弹出窗口的问题的解决
  18. 一篇带你读懂用户故事地图
  19. CTR/CVR预测模型的特征怎么找?不同类型特征怎么处理?序列Embedding特征怎么用?
  20. Harbor安装教程-完全根据官方文档2.6.0版本

热门文章

  1. 跟我一起数据挖掘(16)——R中的线性回归
  2. html返回首页页面代码,后台返回的HTML整个页面代码打开方法
  3. Kali LInux 下Osmocom-BB开源项目
  4. pytorch深度学习中每个epoch运行时间的统计代码
  5. Spring学习【2】
  6. 孤荷凌寒自学python第四十五天Python初学基础基本结束的下阶段预安装准备
  7. 计算机专业英语选择题,计算机专业英语单选题
  8. 使用第三方应用打开pdf文件
  9. 操作系统实验六 设备管理
  10. python的turtle的等边等角三角形的经典简洁画法