def is_amicable_number(a): b = sum(my_module.get_proper_divisors(a)) if a == sum(my_module.get_proper_divisors(b)): if a == b: return False else: return True else: return False
def get_distinct_prime_factors(n): prime_factors = [] divisors = my_module.get_proper_divisors(n) for i in divisors: if my_module.is_prime(i): prime_factors.append(i) return(prime_factors)
def test_get_proper_devisors(self): self.assertEqual(my_module.get_proper_divisors(220), [1, 2, 4, 5, 10, 11, 20, 22, 44, 55, 110]) self.assertEqual(my_module.get_proper_divisors(2), [1])
def generate_abundant_number(ceiling): abundant_numbers = [] for i in xrange(12, ceiling + 1): if sum(my_module.get_proper_divisors(i)) > i: abundant_numbers.append(i) return(abundant_numbers)