目标效果:
源码:
import java.util.Scanner;
/**
* 古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,
假如兔子都不死,问每个月的兔子总数为多少?
* @author Vivinia
*
*/
public class rabbitNum {
static int n=1;
public static void main(String args[]) {
System.out.println("请输入第几代:\n");
Scanner input=new Scanner(System.in);
n=input.nextInt();
System.out.println("兔子对数:"+rabbitBorn(n));
}
public static int rabbitBorn(int n) {
if(n<3) //当n为1或者2,兔子对数都为1
return 1;
else
return rabbitBorn(n-2)*2+rabbitBorn(n-1)-rabbitBorn(n-2); //根据数列得到的规律,具体