RosettaCodeData/Task/Factorial/MiniZinc/factorial.minizinc

15 lines
299 B
Plaintext

var int: factorial(int: n) =
let {
array[0..n] of var int: factorial;
constraint forall(a in 0..n)(
factorial[a] == if (a == 0) then
1
else
a*factorial[a-1]
endif
)} in factorial[n];
var int: fac = factorial(6);
solve satisfy;
output [show(fac),"\n"];