斐波那契数列(递归)

题目

假如有一对兔子,从出生后第三个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子。
假如兔子都不死,请问第n个月后的兔子有多少对?

分析

1月份············兔子个数:1
2月份············兔子个数:1
3月份············兔子个数:2
4月份············兔子个数:3
5月份············兔子个数:5
6月份············兔子个数:8
7月份············兔子个数:13
······
实际上就符合斐波那契数列。

代码

import java.util.Scanner;

public class RabbitTest {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        System.out.print("请输入一个月份:");
        //变量n,表示第n个月
        int n = scan.nextInt();
        int total = RabbitNumber.rabbit(n);
        System.out.println(n + "月的时候兔子的总对数:" + total);
    }
}
public class RabbitNumber {
    //这个rabbit方法是用来计算第n个月的时候兔子的总对数
    public static int rabbit(int n){
        if(n == 1 || n == 2){
            //递归结束条件
            return 1;
        }
        return rabbit(n - 1) + rabbit(n - 2);
    }
}

运行结果

在这里插入图片描述在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值