wangchuang2017 2023-08-04 09:08 采纳率: 0%
浏览 2

斐波那契数列第n项是Fn


public class Fibonacci {
    public static void main(String args[]){
        int n,fn;//n为第n项,fn为第n项的值
        java.util.Scanner s = new Scanner(System.in);
        n=s.nextInt();
        fn=function(n);
        System.out.println("斐波那契数列第"+n+"项为:"+fn);
    }

    public static int function(int n){
          if(n==1 || n==2) return 1;
          return function(n-1)+function(n-2);
    }

}





递归
import java.util.*;
import java.io.*;
public class fib {
 static int fib(int n){
  if(n==1) return 0;
  if(n==2) return 1;
  return fib(n-1)+fib(n-2);
 }
 public static void main(String args[]){
  int n;
  Scanner cin=new Scanner(System.in);
  n=cin.nextInt();
  System.out.println(fib(n));
 }
}
迭代
import java.util.*;
import java.io.*;
public class fib {
 static int fib[]=new int[30];
 public static void main(String args[]){
  int n;
  Scanner cin=new Scanner(System.in);
  n=cin.nextInt();
  fib[1]=0;fib[2]=1;
  for(int i=3;i<=n;i++)
   fib[i]=fib[i-1]+fib[i-2];
  for(int i=1;i<=n;i++)
  System.out.println(fib[n]);
 }
}
  • 写回答

2条回答 默认 最新

  • threenewbee 2023-08-04 09:11
    关注

    (1)你的具体问题是什么,请明确你的问题。
    (2)之前你提问很多,但是为什么从来没有采纳。麻烦及时采纳回答。

    评论

报告相同问题?

问题事件

  • 创建了问题 8月4日