题目要求: 编写程序 ,使用递归方法打印输出Fibonacci数列的前20项是第一和第二个数都是1,以后每个数前 两个数都是1,以后每个数都是前两个数之和,1 、1、2、3、5、8 用公式表示为:f1=f2=1 fn=f(n-1)+f(n-2)(你>=3). 要求使用方法计算Fibonacci数,格式如下: public static long fib (int n)
package bookTest2;
public class recursion {
//第一和第二个数都是1
public static long fib(int n){
if (n == 1 || n == 2)
return 1;
else
//以后每个数前
// 两个数都是1,以后每个数都是前两个数之和,1 、1、2、3、5、8
// 用公式表示为:f1=f2=1 fn=f(n-1)+f(n-2)(你>=3).
return fib(n-1)+fib(n-2);
}
public static void main(String[] args) {
for (int n = 1; n <=20; n++) {
System.out.println(fib(n));
}
}
}
成功截图
F:\Java\jdk-9.0.4\bin\java.exe "-javaagent:F:\IntelliJ IDEA 2020.2.1\lib\idea_rt.jar=52137:F:\IntelliJ IDEA 2020.2.1\bin" -Dfile.encoding=UTF-8 -classpath F:\javaproject\out\production\javaproject bookTest2.recursion
1
1
2
3
5
8
13
21
34
55
89
144
233
377
610
987
1597
2584
4181
6765
Process finished with exit code 0