首页 > 解决方案 > 如何以列格式打印斐波那契数

问题描述

我需要一些帮助,尝试按以下格式打印:

00: 0   
01: 1   
02: 1   
03: 2   
04: 3   
05: 5   
06: 8   
07: 13  
08: 21  
09: 34  
10: 55  

我的代码:

import math
import time

start_time = time.time()
golden_ratio = (1 + math.sqrt(5)) / 2

def  main():
    num = int(input("How many Fibonacci numbers should I print? "))

    for number in range(0,num+1):
        val = (golden_ratio**number - (1 - golden_ratio)**number) / math.sqrt(5)
        print(format(round((val)),'3d'))

main()

标签: pythonstring-formatting

解决方案


import math
import time

start_time = time.time()
golden_ratio = (1 + math.sqrt(5)) / 2

def  main():
    num = int(input("How many Fibonacci numbers should I print? "))

    for number in range(0,num+1):
        val = (golden_ratio**number - (1 - golden_ratio)**number) / math.sqrt(5)
        print('{}: {:.0f}'.format(number, val))

main()

推荐阅读