编写函数,求斐波数列第n项的值,其中第一项和第二项等于1,从第三项开始每项等于前两项之和。编写主程序调用函数计算显示前20项。1,1,2,3,5,8,13......
时间: 2023-08-24 22:02:15 浏览: 105
计算斐波那契数列的第n项
### 回答1:
以下是Python代码实现:
```python
def fibonacci(n):
if n == 1 or n == 2:
return 1
else:
return fibonacci(n-1) + fibonacci(n-2)
for i in range(1, 21):
print(fibonacci(i), end=' ')
```
输出结果为:
```
1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765
```
### 回答2:
斐波那契数列是数学中的一种特殊数列,满足第一项和第二项均为1,从第三项开始,每一项都是前两项之和。现在我们需要编写一个函数,来计算第n项的斐波那契数列的值。下面是代码示例:
```python
def fibonacci(n):
if n == 1 or n == 2:
return 1
else:
fib = [1, 1]
for i in range(2, n):
fib.append(fib[i-1] + fib[i-2])
return fib[n - 1]
# 调用函数计算并显示前20项
for i in range(1, 21):
print("第", i, "项的值是:", fibonacci(i))
```
在这个代码中,我们首先定义了一个函数`fibonacci(n)`来计算第n项的斐波那契数列的值。在函数中,我们首先判断如果n为1或2,直接返回1,因为斐波那契数列的第一项和第二项均为1。然后我们创建了一个名为fib的列表,初始值为[1, 1],用来存储计算过程中的中间结果。接下来,我们通过循环计算第三项到第n项的值,并将结果追加到fib列表中。最后,我们返回斐波那契数列的第n项的值。
在主程序中,我们使用一个循环来调用函数并打印前20项的值。循环变量i从1到20,分别表示计算第i项的斐波那契数列的值,并输出结果。
以上就是根据题目要求编写的函数和主程序的示例代码。
### 回答3:
编写函数,可以使用递归或循环的方法求解斐波那契数列第n项的值。以下是使用递归方法编写的代码:
```python
def fibonacci(n):
if n <= 2:
return 1
else:
return fibonacci(n-1) + fibonacci(n-2)
# 调用函数计算并显示前20项斐波那契数列
for i in range(1, 21):
print(fibonacci(i), end=" ")
```
运行以上代码,可以得到斐波那契数列的前20项的值:1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765。
另外,也可以使用循环的方法求解斐波那契数列,以下是使用循环方法编写的代码:
```python
def fibonacci(n):
if n <= 2:
return 1
else:
a, b = 1, 1
for i in range(3, n+1):
a, b = b, a + b
return b
# 调用函数计算并显示前20项斐波那契数列
for i in range(1, 21):
print(fibonacci(i), end=" ")
```
同样运行以上代码,可以得到斐波那契数列的前20项的值:1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765。
阅读全文