斐波那契数列指的是:数列的后项等于前两项的和,代码中我们用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中斐波那契数列的简单实现方法的详细内容,更多请关注24课堂在线网其它相关文章!