斐波纳契数列问题

package eighteenth;

import java.util.Scanner;

//关系序功能关键算法
//编写函数(或方法)实现:根据指定的n,返回相应的斐波纳契数列。
//说明:斐波纳契数列如下所示:0,1,1,2,3,5,8,13,21…
//即从0和1开始,其后的任何一个斐波纳契数都是它前面两个数之和。例如n=6,则返回数列0,1,1,2,3,5 。
//注意:使用函数(或方法)实现,原型为int[] getFibonacciSeries(int n)
public class three {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入一个数:");
        int n = sc.nextInt();
        int[] a = three.getFibonacciSeries(n);
        for (int i=0;i<a.length-1;i++){
            System.out.print(a[i]+" ");
        }




    }

    public static int[] getFibonacciSeries(int n) {
        if (n < 0) {
            return null;
        } else if (n == 0) {
            return null;
        } else if (n == 1 || n == 2) {
            return null;
        } else {
            int[] fibAry = new int[n + 1];
            fibAry[0] = 0;
            fibAry[1] = fibAry[2] = 1;
            for (int i = 3; i <= n; i++) {
                fibAry[i] = fibAry[i - 1] + fibAry[i - 2];
            }
            return fibAry;
        }
    }
}

  

posted @ 2020-04-06 10:04  初雨了然  阅读(203)  评论(0)    收藏  举报