python打印斐波那契数列前n项
时间: 2023-11-18 20:08:13 浏览: 48
好的,可以使用以下代码实现:
```
n = int(input("请输入需要打印的斐波那契数列的项数:"))
# 初始值
a, b = 0, 1
# 第一项和第二项
print(a)
print(b)
# 输出后面的项
for i in range(2, n):
c = a + b
print(c)
a, b = b, c
```
这段代码可以根据输入的数值 n,打印斐波那契数列的前 n 项。首先设置初始值 a 和 b,分别为 0 和 1,输出第一项和第二项。接着通过循环遍历,输出后面的项,直到输出了前 n 项为止。在循环中,分别计算当前项 c,并将 b 的值赋给 a,c 的值赋给 b,以便计算下一项。
相关问题
python输出斐波那契数列前n项
可以使用递归或循环来输出斐波那契数列前n项。
使用递归:
```python
def fib(n):
if n <= 1:
return n
else:
return fib(n-1) + fib(n-2)
n = int(input("请输入斐波那契数列的项数:"))
for i in range(n):
print(fib(i))
```
使用循环:
```python
n = int(input("请输入斐波那契数列的项数:"))
fib_list = [0, 1]
for i in range(2, n):
fib_list.append(fib_list[i-1] + fib_list[i-2])
for i in range(n):
print(fib_list[i])
```
这两种方法都可以输出斐波那契数列前n项,区别在于递归方法的时间复杂度较高,当n较大时,递归方法会很慢。
python求斐波那契数列前n项和
可以使用递归或循环来求解斐波那契数列前n项和。
使用递归:
```python
def fibonacci(n):
if n <= 1:
return n
else:
return (fibonacci(n-1) + fibonacci(n-2))
n = int(input("请输入斐波那契数列项数:"))
if n <= 0:
print("输入有误!")
else:
sum = 0
for i in range(n):
sum += fibonacci(i)
print("斐波那契数列前", n, "项的和为:", sum)
```
使用循环:
```python
n = int(input("请输入斐波那契数列项数:"))
if n <= 0:
print("输入有误!")
else:
a, b = 0, 1
sum = 0
for i in range(n):
sum += a
a, b = b, a+b
print("斐波那契数列前", n, "项的和为:", sum)
```