1. 程式人生 > 程式設計 >Java列印斐波那契前N項的實現示例

Java列印斐波那契前N項的實現示例

題外

由於idea原因 用註解test無法在控制檯上輸入所以寫死到程式裡了,版本都30.9102了為什麼還是這樣啊,intelJ你們該反思了!!!

用intelJ IDEA的小夥伴有遇到這種測試情況嗎,如果專案上有測試用例需要自己單元測試,怎麼解決控制檯輸入問題(@test情況下),直接改main方法的那個就算了。~~

斐波那契的認識

斐波那契數列前2項為1,從第3項開始為該項的前2項和。

eg:1,1,2,3,5,8…
f(n)=f(n-1)+f(n-2)

程式碼參考

import org.junit.Test;

import java.util.Scanner;

import static java.lang.System.out;

/**
 * ClassName:Maintest
 *
 * @author: zhengkw
 * @description: 測試
 * @date: 20/02/01下午 7:34
 * version:
 * @since: jdk 1.8
 */

public class Maintest { 

  @Test
  public void printFibonacciTest() {
    FibonacciSequence fibonacciSequence = new FibonacciSequence();
    //列印一個斐波那契前i項
    //  Scanner sc = new Scanner(System.in);
    // out.println("列印多少項斐波那契");
    // int i=sc.nextInt(); 
    int i =8;
    for (int n=1;n<i;n++){
      out.print(fibonacciSequence.fibonacci(n)+"\t\t");
    }

  }
}

import static java.lang.System.out;
/**
 * @ClassName:FibonacciSequence
 * @author: zhengkw
 * @description: 斐波那契數列遞迴應用
 * @date: 20/02/07下午 4:10
 * @version:1.0
 * @since: jdk 1.8
 */
public class FibonacciSequence {
  /**
   * @param n 項數
   * @descrption: 生成第n項元素
   * @return: int
   * @date: 20/02/07 下午 5:03
   * @author: zhengkw
   */
  public int fibonacci(int n) {
    if (n < 3) {
      return 1;
    } else {
      return fibonacci(n - 2) + fibonacci(n - 1);
    }
  }
}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。