RosettaCodeData/Task/Perfect-numbers/OCaml/perfect-numbers-2.ocaml
2023-07-01 13:44:08 -04:00

8 lines
179 B
Text

(* range operator *)
let rec (--) a b =
if a > b then
[]
else
a :: (a+1) -- b
let perf n = n = List.fold_left (+) 0 (List.filter (fun i -> n mod i = 0) (1 -- (n-1)))