zoukankan      html  css  js  c++  java
  • 随机求斐波拉契数列第n位的代码

    1------------------------------------------------------------

    package oo.day02;
    import java.util.Scanner;
    public class FibonacciSequence {
    public static void main(String[] args) {
    System.out.println("请输入斐波拉契数列第n项,n>0");
    Scanner scan=new Scanner(System.in);
    int n=scan.nextInt();
    int o=f(n);
    System.out.println("斐波拉契数列第"+n+"项的值为:"+o);
    int d1=f(45);
    System.out.println(d1);
    int d2=f(46);
    System.out.println(d2);
    double goldenCut=(double) d1/d2;
    System.out.println(goldenCut);
    }
    private static int f(int n) {
    int []arr=new int[n];
    if(n==1){
    arr[0]=1;
    }else if(n==2){
    arr[1]=1;
    }else if(n>2){
    arr[0]=1;
    arr[1]=1;
    for(int i=2;i<arr.length;i++){
    arr[i]=arr[i-1]+arr[i-2];
    }
    }return arr[n-1];
    }
    }

    2------------------------------------------------------------------------------

    package oo.day02;
    import java.util.Scanner;
    public class FibonacciSequence2 {
    public static void main(String[] args) {
    System.out.println("请输入斐波拉契数列第n项,n>0");
    Scanner scan=new Scanner(System.in);
    int n=scan.nextInt();
    int o=f(n);
    System.out.println("斐波拉契数列第"+n+"项的值为:"+o);
    double goldenCut=(double)f(45)/f(46);
    System.out.println(goldenCut);
    }
    private static int f(int n) {
    int a=1,b=1,c=0;
    if(n<=2){
    c=1;
    }else{
    for(int i=1;i<=n-2;i++){
    c=a+b;
    a=b;
    b=c;
    }
    }
    return c;
    }
    }

    3---------------------------------------------------------

    package oo.day02;
    import java.util.Scanner;
    public class FibonacciSequence3 {
    public static void main(String[] args) {
    System.out.println("请输入斐波拉契数列第n项,n>0");
    Scanner scan=new Scanner(System.in);
    int n=scan.nextInt();
    int o=f(n);
    System.out.println("斐波拉契数列第"+n+"项的值为:"+o);
    double goldenCut=(double)f(45)/f(46);
    System.out.println(goldenCut);
    }
    private static int f(int n) {
    if(n==1||n==2){
    return 1;
    }else{
    return f(n-1)+f(n-2);
    }
    }
    }

  • 相关阅读:
    [算法学习] 单调栈
    UVA11275 3D Triangles(三维几何)
    2019CCSU11月校赛 B,G题解
    2017-2018 ACM-ICPC Northern Eurasia (Northeastern European Regional) Contest (NEERC 17)(B,D)
    2016湖南省省赛 B 有向无环图(树形dp)
    2016湖南省省赛 J 三角形和矩形(计算几何)
    JAVA 高精度小数模板
    2019湖南省赛 K 双向链表练习题(list)
    2019 字节跳动 [编程题]最大映射(贪心)
    HDU 6740 MUV LUV EXTRA(kmp原理)
  • 原文地址:https://www.cnblogs.com/daemonzd47/p/8979410.html
Copyright © 2011-2022 走看看