Sha256: 25ee5975da6a11f0211644f7c83f2701c1d16fda67c1c3eeffad2d4bec59dd72

Contents?: true

Size: 321 Bytes

Versions: 154

Compression:

Stored size: 321 Bytes

Contents

fun sum (factors: int list, limit: int): int = let
  val sum' = foldl (op +) 0
  val numbers = List.tabulate(limit - 1, fn x => x + 1) (* generate list from [1, limit - 1] *)
  fun any f [] = false
    | any f (x::xs) = f x orelse any f xs
in
  sum' (List.filter (fn x => (any (fn f => x mod f = 0) factors)) numbers)
end

Version data entries

154 entries across 154 versions & 1 rubygems

Version Path
trackler-2.2.1.180 tracks/sml/exercises/sum-of-multiples/example.sml
trackler-2.2.1.179 tracks/sml/exercises/sum-of-multiples/example.sml
trackler-2.2.1.178 tracks/sml/exercises/sum-of-multiples/example.sml
trackler-2.2.1.177 tracks/sml/exercises/sum-of-multiples/example.sml
trackler-2.2.1.176 tracks/sml/exercises/sum-of-multiples/example.sml
trackler-2.2.1.175 tracks/sml/exercises/sum-of-multiples/example.sml
trackler-2.2.1.174 tracks/sml/exercises/sum-of-multiples/example.sml
trackler-2.2.1.173 tracks/sml/exercises/sum-of-multiples/example.sml
trackler-2.2.1.172 tracks/sml/exercises/sum-of-multiples/example.sml
trackler-2.2.1.171 tracks/sml/exercises/sum-of-multiples/example.sml
trackler-2.2.1.170 tracks/sml/exercises/sum-of-multiples/example.sml
trackler-2.2.1.169 tracks/sml/exercises/sum-of-multiples/example.sml
trackler-2.2.1.167 tracks/sml/exercises/sum-of-multiples/example.sml
trackler-2.2.1.166 tracks/sml/exercises/sum-of-multiples/example.sml
trackler-2.2.1.165 tracks/sml/exercises/sum-of-multiples/example.sml
trackler-2.2.1.164 tracks/sml/exercises/sum-of-multiples/example.sml
trackler-2.2.1.163 tracks/sml/exercises/sum-of-multiples/example.sml
trackler-2.2.1.162 tracks/sml/exercises/sum-of-multiples/example.sml
trackler-2.2.1.161 tracks/sml/exercises/sum-of-multiples/example.sml
trackler-2.2.1.160 tracks/sml/exercises/sum-of-multiples/example.sml