Factorial: Difference between revisions

Content added Content deleted
(Added Excel implementation)
Line 5,776: Line 5,776:
(fact (- n 1) (* n acc))))
(fact (- n 1) (* n acc))))
(fact n 1))</lang>
(fact n 1))</lang>

=== Fold ===
We can also define factorial as for/fold (product startvalue) (range) (operation))

<lang Racket>(define (factorial n)
(for/fold ([pro 1]) ([i (in-range 1 (+ n 1))]) (* pro i)))</lang>

Or quite simpler by an for/product

<lang Racket>(define (factorial n)
(for/product ([i (in-range 1 (+ n 1))]) i))</lang>


=={{header|Rapira}}==
=={{header|Rapira}}==