java用数组输出fibo,斐波那契数列-java编程:三种方法实现斐波那契数列

题目要求:编写程序在控制台输出斐波那契数列前20项,每输出5个数换行

//java编程:三种方法实现斐波那契数列

//其一方法:

public class Demo2 {

// 定义三个变量方法

public static void main(String[] args) {

int a = 1, b = 1, c = 0;

System.out.println("斐波那契数列前20项为:");

System.out.print(a + "\t" + b + "\t");

//因为前面还有两个1、1 所以i<=18

for (int i = 1; i <= 18; i++) {

c = a + b;

a = b;

b = c;

System.out.print(c + "\t");

if ((i + 2) % 5 == 0)

System.out.println();

}

}

}//java编程:三种方法实现斐波那契数列

//其二方法:

public class Demo3 {

// 定义数组方法

public static void main(String[] args) {

int arr[] = new int[20];

arr[0] = arr[1] = 1;

for (int i = 2; i < arr.length; i++) {

arr[i] = arr[i - 1] + arr[i - 2];

}

System.out.println("斐波那契数列的前20项如下所示:");

for (int i = 0; i < arr.length; i++) {

if (i % 5 == 0)

System.out.println();

System.out.print(arr[i] + "\t");

}

}

}

//java编程:三种方法实现斐波那契数列

//其三方法:

public class Demo4 {

// 使用递归方法

private static int getFibo(int i) {

if (i == 1 || i == 2)

return 1;

else

return getFibo(i - 1) + getFibo(i - 2);

}

public static void main(String[] args) {

System.out.println("斐波那契数列的前20项为:");

for (int j = 1; j <= 20; j++) {

System.out.print(getFibo(j) + "\t");

if (j % 5 == 0)

System.out.println();

}

}

}

这道兔子题的实质就是斐波那契数列:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?,现在从变量、数组、递归三个角度出发解决这个puzzle,当然还有其它的方法,同一道题用各种不同的思路去思考解决,也是对知识综合运用的锻炼吧。

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值