How to find the first 10 prime Fibonacci numbers in Python

1 Answer

0 votes
def is_prime(n: int) -> bool:
    if n < 2:
        return False
    if n in (2, 3):
        return True
    if n % 2 == 0:
        return False

    i = 3
    while i * i <= n:
        if n % i == 0:
            return False
        i += 2
    return True


def next_fib(state: list[int]) -> int:
    f = state[0]
    nxt = state[0] + state[1]
    state[0] = state[1]
    state[1] = nxt
    return f


fib_state = [1, 1]
count = 0

while count < 10:
    f = next_fib(fib_state)
    if is_prime(f):
        print(f, end=" ")
        count += 1


"""
run:

2 3 5 13 89 233 1597 28657 514229 433494437 

"""

 



answered 9 hours ago by avibootz
...