斐波那契数列python前n
时间: 2023-11-21 21:55:48 浏览: 89
以下是两种Python实现斐波那契数列前n项的方法:
方法一:使用递归函数
```python
def fib(n):
if n <= 1:
return n
else:
return (fib(n-1) + fib(n-2))
n = int(input("请输入要输出的斐波那契数列项数:"))
if n <= 0:
print("输入错误!")
else:
print("斐波那契数列前", n, "项为:")
for i in range(n):
print(fib(i), end=" ")
```
方法二:使用循环
```python
n = int(input("请输入要输出的斐波那契数列项数:"))
if n <= 0:
print("输入错误!")
else:
a, b = 0, 1
print("斐波那契数列前", n, "项为:")
for i in range(n):
print(a, end=" ")
a, b = b, a+b
```
相关问题
Python:斐波那契数列Python:斐波那契数列前n项,前n项和前n项,前n项和
斐波那契数列是一个经典的数学序列,其特点是每个数字都是前两个数字之和,通常从0和1开始。在Python中,你可以用递归或循环的方式来生成这个数列的前n项。
1. **生成前n项**:
```python
def fibonacci(n):
a, b = 0, 1
fib_sequence = []
for _ in range(n):
fib_sequence.append(a)
a, b = b, a + b
return fib_sequence
# 获取前5项
fibonacci(5) # [0, 1, 1, 2, 3]
```
2. **计算前n项和**:
```python
def fibonacci_sum(n):
if n <= 0:
return 0
elif n == 1:
return 1
else:
a, b = 0, 1
sum_fib = a
for _ in range(2, n+1):
sum_fib += b
a, b = b, a + b
return sum_fib
# 计算前6项的和
fibonacci_sum(6) # 输出13 (0+1+1+2+3+5)
```
斐波那契数列python求前n个值
斐波那契数列是一个经典的数列,定义如下:第一个和第二个数为1,从第三个数开始,每个数都是前两个数的和。在Python中,可以使用递归或循环来求解斐波那契数列的前n个值。
使用递归的方式求解斐波那契数列的前n个值的代码如下:
```python
def fibonacci_recursive(n):
if n <= 0:
return []
elif n == 1:
return [1]
elif n == 2:
return [1, 1]
else:
fib_list = fibonacci_recursive(n-1)
fib_list.append(fib_list[-1] + fib_list[-2])
return fib_list
n = int(input("请输入要求解的斐波那契数列的个数:"))
fibonacci_list = fibonacci_recursive(n)
print(fibonacci_list)
```
使用循环的方式求解斐波那契数列的前n个值的代码如下:
```python
def fibonacci_loop(n):
if n <= 0:
return []
elif n == 1:
return [1]
elif n == 2:
return [1, 1]
else:
fib_list = [1, 1]
for i in range(2, n):
fib_list.append(fib_list[-1] + fib_list[-2])
return fib_list
n = int(input("请输入要求解的斐波那契数列的个数:"))
fibonacci_list = fibonacci_loop(n)
print(fibonacci_list)
```
阅读全文