diff options
Diffstat (limited to 'mit/fib_yield.py')
| -rw-r--r-- | mit/fib_yield.py | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/mit/fib_yield.py b/mit/fib_yield.py new file mode 100644 index 0000000..ace9e85 --- /dev/null +++ b/mit/fib_yield.py @@ -0,0 +1,33 @@ +#!/usr/bin/python3 + +def genFib(): + """ Fibonacci sequence based on generators """ + fibn_1 = 1 #fib (n-1) + fibn_2 = 0 #fib (n-2) + + while True: + # fib(n) = fib(n - 1) + fib(n - 2) + next = fibn_1 + fibn_2 + yield next + fibn_2 = fibn_1 + fibn_1 = next + +def genPrimes(): + + prime = 2 + + while True: + + is_prime = True + + for n in range(2, prime): + if (prime % n) == 0 and n != prime: + prime += 1 + is_prime = False + break + + if is_prime: + yield prime + prime += 1 + else: + continue |
