musique/examples/factorial.mq

16 lines
328 B
Plaintext

var for = [ start stop iteration |
if (start > stop)
[nil]
[iteration start; for (start + 1) stop iteration]
];
var factorial = [n | if (n <= 1) [1] [n * (factorial (n-1))]];
for 1 10 [i | say (factorial i)];
var factorial_iterative = [n |
var x = 1;
for 1 n [i|x *= i];
x
];
for 1 10 [i | say (factorial_iterative i)];