diff options
author | Dario Clavijo <daedalus2027@gmail.com> | 2011-01-13 04:55:14 (GMT) |
---|---|---|
committer | James Cameron <quozl@laptop.org> | 2011-01-27 07:41:38 (GMT) |
commit | b732580e43fa0f73511f25622f5de95ccc3eee84 (patch) | |
tree | 82fe4c9c4c88a74081446637e91e57522f22b467 /data/math/factorial | |
parent | e4f74b89a90cd372aa4eb03755c268db2c05f74a (diff) |
Add life, factorial, and jeringoso samples
Co-authored-by: James Cameron <quozl@laptop.org>
Diffstat (limited to 'data/math/factorial')
-rw-r--r-- | data/math/factorial | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/data/math/factorial b/data/math/factorial new file mode 100644 index 0000000..42731d6 --- /dev/null +++ b/data/math/factorial @@ -0,0 +1,34 @@ +import time + +# define a factorial function in recursive flavor +def factorial_recursive(number): + result = 1 + if n > 0: + result = n * factorial_recursive(number-1) + print "factorizing: ", number, " result: ", result + return result + +# define a factorial function in iterative flavor +def factorial_iterative(number): + result = 1 + for i in range(1, number+1): + result = result * i + print "factorizing: ", i, " result: ", result + return result + +def calculate(number, type): + start = time.time() + if type == 0: + type_s = "recursive" + result = factorial_recursive(number) + else: + type_s = "iterative" + result = factorial_iterative(number) + delta = time.time() - start + print "Type: ", type_s, " in: ", 1/delta + +# ask for a number to factorize +number = input("Please input a number:") +print "Calculating..." +calculate(number, 0) +calculate(number, 1) |