27 lines
484 B
Plaintext
27 lines
484 B
Plaintext
defmodule SelfNums do
|
|
|
|
def digAndSum(number) when is_number(number) do
|
|
Integer.digits(number) |>
|
|
Enum.reduce( 0, fn(num, acc) -> num + acc end ) |>
|
|
(fn(x) -> x + number end).()
|
|
end
|
|
|
|
def selfFilter(list, firstNth) do
|
|
numRange = Enum.to_list 1..firstNth
|
|
numRange -- list
|
|
end
|
|
|
|
end
|
|
|
|
defmodule SelfTest do
|
|
|
|
import SelfNums
|
|
stop = 1000
|
|
Enum.to_list 1..stop |>
|
|
Enum.map(&digAndSum/1) |>
|
|
SelfNums.selfFilter(stop) |>
|
|
Enum.take(50) |>
|
|
IO.inspect
|
|
|
|
end
|