Python实现斐波那契数列输出前20项且每行4个的问题咨询
Python斐波那契序列实现修正方案
原有代码存在以下问题:
- 初始值设置为
a=0,会导致序列第一个输出为0,不符合要求的1,1,2...的起始格式 - 原有循环判断条件
while a < n是输出所有小于n的斐波那契数,不是你需要的前n个序列条目,调用fib(20)只会输出小于20的数,远不足20个 - 没有做每行4个条目的输出格式控制
修正后可直接运行的代码如下:
def fib(count): a, b = 1, 1 # 遍历输出指定数量的序列条目 for i in range(count): # 每4个条目自动换行,其余条目用空格分隔 print(a, end='\n' if (i + 1) % 4 == 0 else ' ') a, b = b, a + b # 输出前20个斐波那契条目 fib(20)
运行输出结果:
1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765
内容的提问来源于stack exchange,提问作者Chinmay Roy
相关产品推荐
相关产品推荐

