码迷,mamicode.com
首页 > 其他好文 > 详细

第4章-6.输出前 n 个Fibonacci数 (15分)

时间:2020-03-28 18:08:10      阅读:301      评论:0      收藏:0      [点我收藏+]

标签:lse   ext   一个   col   end   lin   stl   范围   span   

本题要求编写程序,输出菲波那契(Fibonacci)数列的前N项,每行输出5个,题目保证输出结果在长整型范围内。

Fibonacci数列就是满足任一项数字是前两项的和

(最开始两项均定义为1)的数列

例如:1,1,2,3,5,8,13,...。

输入格式:

输入在一行中给出一个整数N(1N46)

输出格式:

输出前N个Fibonacci数,每个数占11位,每行输出5个。如果最后一行输出的个数不到5个,也需要换行。

如果N小于1,则输出"Invalid."

输入样例1:

7
 

输出样例1:

          1          1          2          3          5
          8         13
 

输入样例2:

0
 

输出样例2:

Invalid.
 1 # 输出前 n 个Fibonacci数
 2 # Author: cnRick
 3 # Time  : 2020-3-28
 4 Fibonacci = [1,1]
 5 n = int(input())
 6 if n < 1:
 7     print("Invalid.")
 8 elif 1 <= n < 2:
 9     if n == 1:
10         print("{:11d}".format(Fibonacci[0]))
11     else:
12         print("{:11d}".format(Fibonacci[1]))
13 else:
14     for i in range(2,n):
15         Fibonacci.append(Fibonacci[i-1] + Fibonacci[i-2])
16     cnt = 0
17     lastLineIndex = n // 5
18     for i in range(0,n):
19         print("{:11d}".format(Fibonacci[cnt]),end="")
20         cnt += 1
21         if((cnt % 5 == 0) or (cnt == n)):
22             print()

 

 

第4章-6.输出前 n 个Fibonacci数 (15分)

标签:lse   ext   一个   col   end   lin   stl   范围   span   

原文地址:https://www.cnblogs.com/dreamcoding/p/12588241.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!