斐波那契数列

本文介绍了一种使用Java实现斐波那契数列的方法,通过迭代而非递归的方式计算数列中的指定项,展示了如何初始化数组并利用循环结构进行数值计算。

 

斐波那契数列,又称黄金分割数列,指的是这样一个数列:0、1、1、2、3、5、8、13、21、34、……在数学上,斐波纳契数列以如下被以递归的方法定义:F(0)=0,F(1)=1,F(n)=F(n-1)+F(n-2)(n≥2,n∈N*)在现代物理、准晶体结构、化学等领域,斐波纳契数列都有直接的应用。

写这段代码时,脑袋有点秀逗了,转不过来弯,总想着用判断语句把前两种情况加到for循环里面去,分两种不同的情况输出,结果调试了很久,最后终于思考明白了!代码如下:

package com.study07;

import java.util.Scanner;

/*
* 斐波那契数列,又称黄金分割数列,指的是这样一个数列:0、1、1、2、3、5、8、13、21、34、……
* 在数学上,斐波纳契数列以如下被以递归的方法定义:F(0)=0,F(1)=1,F(n)=F(n-1)+F(n-2)(n≥2,n∈N*)
*/
public class tuzi {
    public static void main(String[] args) {
        Scanner a = new Scanner(System.in);

        //输入所要求的兔子代数
        System.out.print("输入所求兔子代数:");
        int n = a.nextInt();

        int[] b = new int[n+1];

        //第一代为0,第二代为1
        b[0] = 0;
        b[1] = 1;

        //之后就是前两代之和
        for (int i = 2; i <= n ; i++) {
            b[i] = b[i - 1] + b[i - 2];
        }
        System.out.println("第" + n + "代兔子总数为:" + b[n-1]);
    }
}

 

转载于:https://my.oschina.net/u/3841003/blog/1833288

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值