1234567891011121314151617181920212223242526 |
- #!/usr/bin/ruby
- #
- ## https://rosettacode.org/wiki/Factorial
- #
- # Recursive
- func factorial_recursive(n) {
- n == 0 ? 1 : (n * __FUNC__(n-1));
- };
-
- # Iterative with Array#reduce
- func factorial_reduce(n) {
- 1..n -> reduce('*');
- };
-
- # Iterative with Block#repeat
- func factorial_iterative(n) {
- var f = 1;
- {|i| f *= i } * n;
- return f;
- };
-
- # Built-in Number#factorial:
- say 5!;
|