美文网首页
python 递归方法求斐波那契数列

python 递归方法求斐波那契数列

作者: 吃鱼喵了个鱼 | 来源:发表于2019-06-02 15:33 被阅读0次
    斐波那契数列我之前的文章已经写到过,只是写的比较简单的递归方法,现在考虑了输入格式的问题,所以单独写一次.

    输入格式考虑到输入为负和输入非数字的情况下进行重新输入,直到输入正确为止!

    #递归斐波那契数列
    def fbnq(n):
        if n == 0:
            return 0
        elif n == 1:
            return 1
        else:
            return fbnq(n - 1) + fbnq(n - 2)
    
    while True:
        #检查输入是否正确
        try:
            a = int(input('please input a positive number:'))
            if a < 0:
                continue
        except ValueError:
            continue
        print(' ')
        print('{}的斐波那契数列为:'.format(a))
        #依次列出斐波那契数列
        for i in range(1, a + 1):
            print(fbnq(i), end=' ')
        break
    
    调试结果为:
    please input a positive number:-10
    please input a positive number:adc
    please input a positive number:10
     
    10的斐波那契数列为:
    1 1 2 3 5 8 13 21 34 55 
    

    相关文章

      网友评论

          本文标题:python 递归方法求斐波那契数列

          本文链接:https://www.haomeiwen.com/subject/qspxxctx.html