Ejemplo n.º 1
0
def primeFactorization(length):  #分解质因数
    global p, q
    q = get_large_prime_length(length)
    while True:
        d = random.randint(2, 10000)
        if d % 2 == 0:
            p = q * d + 1
            if is_prime(p) == True:
                break
            else:
                continue
        else:
            continue
    primeList = prime_range(2, int(math.sqrt(d)))
    result = [[0, 0] for i in range(len(primeList))]
    for i in range(len(primeList)):
        result[i][0] = primeList[i]
        while d % primeList[i] == 0:
            result[i][1] += 1
            d = d // primeList[i]
    if d != 1:
        result.append([d, 1])
    result.append([q, 1])
    #     请问这个result列表的作用是什么?
    return result
Ejemplo n.º 2
0
def primeFactorization(k):  #分解质因数
    while True:
        q = get_large_prime_length(length)
        p = (q * k + 1) if (k % 2 == 0) else (q * (k + 1) + 1)
        if is_prime(p) == True:
            break
        else:
            continue
    primeList = prime_range(2, int(math.sqrt(k)))
    result = [[0, 0] for i in range(len(primeList))]
    for i in range(len(primeList)):
        result[i][0] = primeList[i]
        while k % primeList[i] == 0:
            result[i][1] += 1
            k = k // primeList[i]
    if k != 1:
        result.append([k, 1])
    result.append([q, 1])
    return result, p, q
Ejemplo n.º 3
0
def rsp():
    print(prime_range(10, 100))  # 0.028922319412231445