diff options
author | Nathan Lasseter <nathan.je.lasseter@googlemail.com> | 2009-10-04 00:56:56 +0100 |
---|---|---|
committer | Nathan Lasseter <nathan.je.lasseter@googlemail.com> | 2009-10-04 00:56:56 +0100 |
commit | 0248ed34ce3d05228bc5084669c3a27933be0c2e (patch) | |
tree | b9c4990344b0863a2af851b5917c49f3a5f03e6b /problem6.erl | |
parent | 00686037d57eb0a0d5eba6eeb6fcc9692e8b59f6 (diff) |
first commit
Diffstat (limited to 'problem6.erl')
-rwxr-xr-x | problem6.erl | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/problem6.erl b/problem6.erl new file mode 100755 index 0000000..34a0a01 --- /dev/null +++ b/problem6.erl @@ -0,0 +1,22 @@ +-module(problem6). +-export([solve/0]). + +solve() -> diff(lists:seq(1,100)). + +diff(List) -> + M = sum_of_squares(List), + N = square_of_sum(List), + if + M < N -> + N - M; + M > N -> + M - N; + true -> + 0 + end. + +sum_of_squares(List) -> + lists:sum(lists:map(fun(X) -> X*X end, List)). +square_of_sum(List) -> + O = lists:sum(List), + O*O. |