Perfect numbers: Difference between revisions
Content added Content deleted
m (Description) |
(Added Oz.) |
||
Line 387: | Line 387: | ||
let perf n = n = List.fold_left (+) 0 (List.filter (fun i -> n mod i = 0) (1 -- (n-1)))</lang> |
let perf n = n = List.fold_left (+) 0 (List.filter (fun i -> n mod i = 0) (1 -- (n-1)))</lang> |
||
=={{header|Oz}}== |
|||
<lang oz>declare |
|||
fun {IsPerfect N} |
|||
fun {IsNFactor I} N mod I == 0 end |
|||
Factors = {Filter {List.number 1 N-1 1} IsNFactor} |
|||
in |
|||
{Sum Factors} == N |
|||
end |
|||
fun {Sum Xs} {FoldL Xs Number.'+' 0} end |
|||
in |
|||
{Show {Filter {List.number 1 10000 1} IsPerfect}} |
|||
{Show {IsPerfect 33550336}}</lang> |
|||
=={{header|Perl}}== |
=={{header|Perl}}== |