找到第9个斐波纳契素数

时间:2013-03-05 23:48:21

标签: python python-3.x fibonacci

我不确定这是否是正确的地方,但我已经遇到了代码问题。我试图找到第9个斐波纳契数,这是一个素数,但我遇到了问题。首先,检查数字是否为Prime的函数返回单个数字素数(2,3,5,7)的无。接下来,我认为我正在寻找的值是514229,如here所示,但我的程序显示给出的值为17711,因为第9个Fibonacci素数不正确。我的代码发布在下面:

def isPrime(n):


    n = abs(int(n))

   if n < 2:
        return False


    elif n == 2:
        return True


    elif not n & 1:
        return False

    else:
        for x in range(3, n/2):
            if n % x == 0:
                return False
            return True


def chkFibonacci():

    num1 = 1
    num2 = 1
    mySum = 0
    ctr = 0
    choice = 'n'

    while (choice != 'y'):
        mySum = num1+num2
        #print mySum
        if (isPrime(mySum)== True):
            ctr = ctr + 1
            print mySum
            if (ctr == 9):
                print mySum
                break
        num1 = num2
        num2 = mySum    

chkFibonacci()
print isPrime(3)

感谢任何帮助。在此先感谢!!

1 个答案:

答案 0 :(得分:5)

return True的{​​{1}}分支中的{p> else似乎缩进了太多。