Esempio n. 1
0
 def naive_simplified(self):
     digits_num = int_to_list(self.num)
     digits_den = int_to_list(self.den)
     joint_factors = joint_frequency_dict(digits_num, digits_den)
     if not joint_factors:
         return Fraction(self.num, self.den)
     else:
         digits_num_final = [i for i in digits_num]
         digits_den_final = [i for i in digits_den]
         for k, v in joint_factors.iteritems():
             for i in range(v):
                 digits_num_final.remove(k)
                 digits_den_final.remove(k)
         num = list_to_int(digits_num_final)
         den = list_to_int(digits_den_final)
         if den == 0:
             # Ignore divide by zero problems
             return Fraction(0, 1)
         return Fraction(num, den).simplified()
Esempio n. 2
0
 def naive_simplified(self):
     digits_num = int_to_list(self.num)
     digits_den = int_to_list(self.den)
     joint_factors = joint_frequency_dict(digits_num, digits_den)
     if not joint_factors:
         return Fraction(self.num, self.den)
     else:
         digits_num_final = [i for i in digits_num]
         digits_den_final = [i for i in digits_den]
         for k, v in joint_factors.iteritems():
             for i in range(v):
                 digits_num_final.remove(k)
                 digits_den_final.remove(k)
         num = list_to_int(digits_num_final)
         den = list_to_int(digits_den_final)
         if den == 0:
             # Ignore divide by zero problems
             return Fraction(0, 1)
         return Fraction(num, den).simplified()
Esempio n. 3
0
def is_circular(n):
    l = int_to_list(n)
    return all(is_prime(list_to_int(r)) for r in rotations(l))
Esempio n. 4
0
def is_circular(n):
    l = int_to_list(n)
    return all(is_prime(list_to_int(r)) for r in rotations(l))