Problem01 不死神兔
程序员文章站
2023-12-24 15:13:27
题目:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子对数为多少? 程序分析:兔子的规律为数列1,1,2,3,5,8,13,21.... 即斐波那契数列。 输入月数为第9个月,输出: ......
题目:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子对数为多少?
程序分析:兔子的规律为数列1,1,2,3,5,8,13,21....
即斐波那契数列。
1 import java.util.*; 2 3 public class problem01 { 4 5 public static void main(string[] args) { 6 // 题目: 7 // 有一对兔子,从出生后第3个月起每个月都生一对兔子 8 // 小兔子长到第三个月后每个月又生一对兔子 9 // 假如兔子都不死,问每个月的兔子对数为多少? 10 // 程序分析:兔子对数的规律为数列1,1,2,3,5,8,13,21... 11 // 即斐波那契数列 12 scanner s = new scanner(system.in); 13 system.out.println("请输入月数:"); 14 int month = s.nextint(); 15 s.close(); 16 system.out.println(countrabbit(month)); 17 18 } 19 20 // 使用递归实现斐波那契数列 21 public static int countrabbit(int month) { 22 if (month==1||month==2) { 23 return 1; 24 }else { 25 return countrabbit(month-1)+countrabbit(month-2); 26 } 27 } 28 29 }
输入月数为第9个月,输出:
1 请输入月数: 2 9 3 34