兔子产仔问题
问题描述:如果一对两个月大的兔子以后每一月都可以生成一对小兔子,而一对新生的兔子出生两个月后才可以生小兔子。也就是说,一月份出生,3月份才可以产仔。那么假定一年之内没有兔子死亡事件,那么1年后公有多少只兔子?
算法:递推算法
import java.util.Scanner;
public class DiTui{
public static void main(String[] args){
System.out.println("兔子产仔问题!!!");
Scanner scanner = new Scanner(System.in);
System.out.print("请输入月数:");
int month = scanner.nextInt();
int result = countNumber(month);
System.out.println("经过"+month+"月的时间,一共有"+result+"对兔子!");
}
public static int countNumber(int month){
int num1, num2;
int num = 0; //用来计算兔子的个数
if(month ==1 || month ==2){
return 1;
}else{
num1 = countNumber(month-1);
num2 = countNumber(month-2);
num = num1+num2;
return num;
}
}
}