changeset 655 | 3d04ee04966d |
parent 626 | 2d91b2107656 |
child 702 | 39e21a33ffb0 |
654:fb6192488b91 | 655:3d04ee04966d |
---|---|
1 def fact(n) = if n == 0 then 1 else n * fact(n - 1); |
1 // a simple factorial program |
2 // (including a tail recursive version) |
|
2 |
3 |
3 def facT(n, acc) = if n == 0 then acc else facT(n - 1, n * acc); |
|
4 |
4 |
5 facT(15, 1) |
5 def fact(n) = |
6 if n == 0 then 1 else n * fact(n - 1); |
|
6 |
7 |
7 //fact(15) |
8 def facT(n, acc) = |
9 if n == 0 then acc else facT(n - 1, n * acc); |
|
8 |
10 |
11 def facTi(n) = facT(n, 1); |
|
12 |
|
13 //fact(10) |
|
14 //facTi(10) |
|
15 |
|
16 write(facTi(5 + 5)) |
|
17 |