Ejemplo n.º 1
0
def get_circular(pwr_of_10):
    primes = get_primes_below(10 ** pwr_of_10)
    circular = []
    for prime in primes:
#        print prime, "--"
        original = prime
        step = int(''.join([str(prime)[-1:], str(prime)[:-1]]))
#        print original, step
#        steps = []
        while step != original:
            if step not in primes:
                break
#            steps.append(step)
#            print steps, step
            step = int(''.join([str(step)[-1:], str(step)[:-1]]))
#            print step, str(prime)[-1:], str(prime)[:-1], ''.join([str(prime)[-1:], str(prime)[:-1]])
        if step == original:
#            print step, original, "---"
#            for thing in steps:
#                print step,
#            print
            circular.append(original)
#    for thing in circular:
#        print(int(thing)),
    return circular
Ejemplo n.º 2
0
def prime_divisors(number):
    primes = list_primes.get_primes_below(number)
    prime_divisor = {}
    for prime in primes:
        while number % prime == 0:
            if prime in prime_divisor:
                prime_divisor[prime] += 1
            else:
                prime_divisor[prime] = 1
            number /= prime
    if number != 1:
        prime_divisor[number] = 1
    return prime_divisor