From 98bebe3117d30374c32925f30ff4ce3d6fda6ac5 Mon Sep 17 00:00:00 2001 From: cedricbonhomme Date: Wed, 28 Dec 2011 18:15:50 +0100 Subject: [PATCH] Added Syracuse sequence. --- stegano/generators.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/stegano/generators.py b/stegano/generators.py index eacc90b..3921464 100644 --- a/stegano/generators.py +++ b/stegano/generators.py @@ -99,6 +99,21 @@ def fibonacci(): a, b = b, a + b +def syracuse(l=15): + n = 0 + while True: + yield syracuse_gen(n, l) + n += 1 + +def syracuse_gen(n, l=15): + if n == 0: + return l + if n % 2 == 0: + return syracuse_gen(n-1)/2 + elif n % 2 == 1: + return 3*syracuse_gen(n-1)+1 + + if __name__ == "__main__": # Point of entry in execution mode. f = fibonacci()