Python如何用while语句输出斐波那契数列的前20项
时间: 2023-05-21 18:06:17 浏览: 568
以下是Python用while语句输出斐波那契数列的前20项的代码:
```
a, b = 0, 1
count = 0
while count < 20:
print(b)
a, b = b, a + b
count += 1
```
该段代码输出的结果如下:
```
1
1
2
3
5
8
13
21
34
55
89
144
233
377
610
987
1597
2584
4181
6765
```
相关问题
用递归的方法并用while语句编写斐波那契数列
递归方法实现斐波那契数列:
```python
def fibonacci_recursive(n):
if n <= 1:
return n
else:
return fibonacci_recursive(n-1) + fibonacci_recursive(n-2)
```
使用 while 语句实现斐波那契数列:
```python
def fibonacci_while(n):
a, b = 0, 1
while n > 0:
a, b = b, a + b
n -= 1
return a
```
这两种方法都可以计算斐波那契数列,但递归方法的效率较低,当计算大量的斐波那契数时会出现栈溢出的问题。使用 while 语句可以避免这个问题。
python输出斐波那契数列的前50项
斐波那契数列是指在数列中,每一个数都是前两个数的和。最开始的两个数是0和1,那么依次计算下去,就得到了如下所示的数列:
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, 10946, 17711, 28657, 46368, 75025, 121393, 196418, 317811, 514229, 832040, 1346269, 2178309, 3524578, 5702887, 9227465, 14930352, 24157817, 39088169, 63245986, 102334155, 165580141, 267914296, 433494437, 701408733, 1134903170, 1836311903, 2971215073, 4807526976, 7778742049, 12586269025
下面是Python的代码,用以输出斐波那契数列的前50项。
```python
n = 50 # 打印前50项斐波那契数列
n1 = 0
n2 = 1
count = 0
# 判断输入的值是否合法
if n <= 0:
print("请输入一个正整数。")
elif n == 1:
print("斐波那契数列:")
print(n1)
else:
print("斐波那契数列:")
while count < n:
print(n1,end=' , ')
n3 = n1 + n2
n1 = n2
n2 = n3
count += 1
```
以上的Python代码输出了前50项斐波那契数列。其中,首先定义了一个变量n,表示要输出的数列的长度。然后定义了两个初始值为0和1的变量n1和n2,表示斐波那契数列的前两个数。接着使用while循环和一个计数变量count,依次计算每一项斐波那契数列的值,并输出。最后,如果输入的n<=0,那么打印提示语句,如果n=1,就直接输出第一个斐波那契数。
阅读全文