大家好,很抱歉给大家带来了麻烦。我需要在我的编码课上解决这个问题,但我不知道从哪里开始。
编写一个函数my_n_fib_primes(n),其中输出fib_primes是前n个数字的列表,前n个数字既是斐波那契数又是质数。请注意,1不是使用n= 9的prime.Test。
以上就是我应该做的,到目前为止我已经做到了这一点。
def my_n_fib_primes(n):
n0=0
n1=1
fib_primes = []
count = 0
while count < n:
count += 1
nth = n0 + n1
n0 = n1
n1 = nth
fib_primes.append(n0)
return fib_primes
my_n_fib_primes(9)我知道我还没有做出任何真正的尝试来实现质数。我只是想不出一种方法来实现它,并且只在数字是质数的时候才使计数增加。
我也已经有一个寻找质数的代码,如果这个数字是质数,那么返回数字1,如果不是,返回0。这个代码是这样的。
def my_is_prime(n):
out = 1
if n > 1:
for i in range(2,n//2):
if (n % i) == 0:
out = 0
else:
out = 1
return out谁能给我指个方向?谢谢。
发布于 2021-02-23 06:05:07
在将数字添加到列表之前,在循环中调用质数检查器。
def my_n_fib_primes(n):
n0=0
n1=1
fib_primes = []
while len(fib_primes) < n:
nth = n0 + n1
n0 = n1
n1 = nth
if my_is_prime(n0):
fib_primes.append(n0)
return fib_primes不需要count变量,只需使用结果列表的长度即可。
https://stackoverflow.com/questions/66324090
复制相似问题