如何用Java編寫斐波那契數列
阿新 • • 發佈:2019-02-08
無窮數列1,1,2,3,5,8,13,21,34,55,……,稱為Fibonacci數列。它可以遞迴地定義為:
F(n)=1 n=0
F(n)=1 n=1
F(n)=F(n-1)+F(n-2) n>1
這是一個遞迴關係式,它說明當n>1時,這個數列的第n項的值是它前面兩項之和。它用兩個較小的自變數的函式值來定義一個較大自變數的函式值,所以需要兩個初始值F(0)和F(1)。
程式碼如下:
import java.util.Scanner; public class Fibonacci { public static void main(String[] args) { System.out.println("請輸入整數n值"); Scanner a = new Scanner(System.in); int n = a.nextInt(); int[] f = new int[n]; //為數列賦值 for (int i = 0; i <f.length; i++) { f[i]=feibonaci(i); } System.out.println("得到的斐波那契數列為:"); //輸出斐波那契數列 for(int p : f) { System.out.print(p+"\t"); } } public static int feibonaci(int n) { if (n == 0 || n == 1) { return 1; } else { //遞迴呼叫 return feibonaci(n - 1) + feibonaci(n - 2); } } }