兔子数列,也被称为斐波那契数列,是一个经典的数学问题,其定义如下:
F(1) = 1
F(2) = 1
F(n) = F(n-1) + F(n-2) (对于所有 n ≥ 3)
其中,F(n) 表示第 n 个月的兔子对数。
```python
def fibonacci(n):
if n <= 0:
return "请输入一个正整数"
elif n == 1 or n == 2:
return 1
else:
return fibonacci(n-1) + fibonacci(n-2)
n = int(input("请输入月份n:"))
result = fibonacci(n)
print("第", n, "个月的兔子对数为", result)
```
此外,还可以使用迭代方法来实现兔子数列的计算,以下是使用迭代方法的 Python 代码示例:
```python
def fibonacci_iterative(n):
if n <= 0:
return "请输入一个正整数"
elif n == 1 or n == 2:
return 1
else:
fib = * n
for i in range(2, n):
fib[i] = fib[i-1] + fib[i-2]
return fib[-1]
n = int(input("请输入月份n:"))
result = fibonacci_iterative(n)
print("第", n, "个月的兔子对数为", result)
```
这两种方法都可以用来计算兔子数列,选择哪种方法取决于具体需求和性能考虑。递归方法更简洁直观,但可能会导致栈溢出等问题,特别是在计算较大的 n 值时。迭代方法则更高效,适用于计算较大的 n 值。