def get_fib_with_digits(num_digits): """ finds the first Fibonacci number with a certain amount of digits """ stub = Stub() stub.start() counter = 0 for num in gen_fibonacci(): if count_digits(num) >= num_digits: return counter if counter % 1000 == 0: stub.msg(count_digits(num), counter) counter += 1
def sum_of_even_fibonacci_numbers(limit): """ finds the sum of even Fibonacci numbers up to some limit, inclusive limit (int): max number returns (int): sum """ even_fibs = [] for fib in gen_fibonacci(): if fib > limit: break elif is_even(fib): even_fibs.append(fib) #print("+ " + str(fib)) else: continue return sum(even_fibs)