斐波那契数列指的是:数列的后项等于前两项的和,代码中我们用a[i]=a[i-1]+a[i-2]实现。
典型兔子生小兔问题
古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对,假设每对小兔子都不死,编程实现求每个月兔子对数。
相关视频教程推荐:java教学视频
代码示例:
核心代码,斐波那契数列(后项等于前两项的和):
public static void getTuTu(int[] tutu, int n) { if (n == 1) { System.out.println("第一个月兔子对数为1"); } else if (n == 2) { System.out.println("第二个月兔子对数为1"); } else { tutu[0] = 1; tutu[1] = 1; System.out.println("第1个月兔子对数为1"); System.out.println("第2个月兔子对数为1"); for (int i = 2; i < n; i++) { tutu[i] = tutu[i - 1] + tutu[i - 2];//数组记录兔子对数 System.out.println("第" + (i + 1) + "个月的兔子对数为" + tutu[i]); } } }
完整代码:
package day191125; import java.util.Scanner; public class TuZi { public static void main(String[] args) { Scanner input = new Scanner(System.in); while (true) { System.out.println("========="); System.out.println("输入求第几个月的兔子:"); int n = input.nextInt(); if (n <= 0) { System.out.println("输入错误重新输入"); continue; } int[] tutu = new int[n]; getTuTu(tutu, n); } } public static void getTuTu(int[] tutu, int n) { if (n == 1) { System.out.println("第一个月兔子对数为1"); } else if (n == 2) { System.out.println("第二个月兔子对数为1"); } else { tutu[0] = 1; tutu[1] = 1; System.out.println("第1个月兔子对数为1"); System.out.println("第2个月兔子对数为1"); for (int i = 2; i < n; i++) { tutu[i] = tutu[i - 1] + tutu[i - 2]; System.out.println("第" + (i + 1) + "个月的兔子对数为" + tutu[i]); } } } }
运行结果图:
当然实现的方法不止这一种,这里只是简单介绍一种方法。
想了解更多相关教程,可以访问java入门学习,欢迎大家一起来讨论学习。
以上就是java中斐波那契数列的简单实现方法的详细内容,
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)