# 37bd082d9946

`Problem 6`
author Steve Losh Sun, 10 Apr 2016 01:39:44 +0000 2e707232cee0 3512c67e0138 (none) euler.lisp

## Changes

```--- a/euler.lisp	Sun Apr 10 01:27:54 2016 +0000
+++ b/euler.lisp	Sun Apr 10 01:39:44 2016 +0000
@@ -30,6 +30,9 @@
(loop :for i :from from :below below
:collect i))

+(defun square (n)
+  (* n n))
+

;;;; Problems
(defun problem-1 ()
@@ -100,3 +103,24 @@
:when (every (lambda (n) (dividesp i n))
divisors)
:return i)))
+
+(defun problem-6 ()
+  ;; The sum of the squares of the first ten natural numbers is,
+  ;;   1^2 + 2^2 + ... + 10^2 = 385
+  ;;
+  ;; The square of the sum of the first ten natural numbers is,
+  ;;   (1 + 2 + ... + 10)^2 = 55^2 = 3025
+  ;;
+  ;; Hence the difference between the sum of the squares of the first ten
+  ;; natural numbers and the square of the sum is 3025 − 385 = 2640.
+  ;;
+  ;; Find the difference between the sum of the squares of the first one hundred
+  ;; natural numbers and the square of the sum.
+  (flet ((sum-of-squares (to)
+           (loop :for i :from 1 :to to
+                 :sum (square i)))
+         (square-of-sum (to)
+           (square (loop :for i :from 1 :to to
+                         :sum i))))
+    (abs (- (sum-of-squares 100) ; apparently it wants the absolute value
+            (square-of-sum 100)))))```