Sha256: e677547b8f1113b47942af38a7b0dfbd1a4ec064a26d8271fe801484fadb4b7e
Contents?: true
Size: 543 Bytes
Versions: 162
Compression:
Stored size: 543 Bytes
Contents
exception NotAPositiveInteger datatype classification = Abundant | Deficient | Perfect fun sigma n = let fun loop i = if i * i > n then 0 else if n mod i <> 0 then loop (i + 1) else if n div i = i then i + loop (i + 1) else i + (n div i) + loop (i + 1) in loop 1 end fun classify n = if n < 1 then raise NotAPositiveInteger else case Int.compare (sigma n, 2 * n) of GREATER => Abundant | LESS => Deficient | _ => Perfect
Version data entries
162 entries across 162 versions & 1 rubygems