在python中创建2个质数的乘积问题

时间:2019-09-12 08:27:05

标签: python jupyter-notebook

ive创建了一个函数,可以为我找到2个数字的gcd, 但是,当在新函数中使用此函数来查找2个随机质数的乘积时,我的函数似乎不起作用;它给了我非素数。

def png():
    b=0
    c=0
    while gcd(b,c) != 1:
        b= random.randint(1,1*10**20)
        c= random.randint(1,1*10**20)
    if gcd(b,c) == 1:
        return b*c

有人可以帮我解决这个问题吗

1 个答案:

答案 0 :(得分:0)

  

找到2个随机质数的乘积

您的代码查找互质数,而不是质数。 https://en.wikipedia.org/wiki/Coprime_integers例如,9和14的GCD为1,但都不是质数。

如果要查找素数,建议使用sieve of Eratosthenes