/*
*用java打印斐波那契数列的前20项
*/
public class Fibo{
public static void main(String[] args) {
//方法一:定义3个变量
int a=1,b=1,c=0;
System.out.println("斐波那契数列前20项为:");
System.out.print(a+"\t"+b+"\t");
for(int i=0; i<18; i++){
c=a+b;
a=b;
b=c;
System.out.print(c+"\t");
if((i-2)%5==0){
System.out.println();
}
}
System.out.println();
//方法二: 定义数组
System.out.print("斐波那契数列前20项为:");
int arr[] = new int[20];
arr[0]=arr[1]= 1;
for(int j=2; j<20; j++){
arr[j] = arr[j-1] + arr[j-2];
}
for(int i=0; i<20; i++){
if(i%5==0){
System.out.println();
}
System.out.print(arr[i] + "\t");
}
System.out.println();
System.out.println();
//方法三: 递归调用法
System.out.println("斐波那契数列前20项为:");
for(int i=1; i<21; i++){
System.out.print(getFibo(i) + "\t");
if(i%5==0){
System.out.println();
}
}
}
private static int getFibo(int i){ //递归调用
if(i==1 || i==2){
return 1;
}else{
return getFibo(i-1) + getFibo(i-2);
}
}
}
斐波那契数列 java的3种写法
最新推荐文章于 2022-12-12 01:20:17 发布