From f6a2d0acb3ae644f255ae2c0669969ac4de45d83 Mon Sep 17 00:00:00 2001 From: Evan Hemsley Date: Sat, 22 Oct 2016 13:04:08 -0700 Subject: [PATCH] solution to problem 007 in lisp --- lisp/euler.lisp | 2 +- lisp/euler007.lisp | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 lisp/euler007.lisp diff --git a/lisp/euler.lisp b/lisp/euler.lisp index f4343b0..30d2fb5 100644 --- a/lisp/euler.lisp +++ b/lisp/euler.lisp @@ -10,7 +10,7 @@ ) (defun prime (n) - (eq (length (member T (mapcar (lambda (a) (eq (mod n a) 0)) (range 2 (sqrt n))))) 0) + (eq (length (member T (mapcar (lambda (a) (and (eq (mod n a) 0) (/= n a))) (range 2 (sqrt n))))) 0) ) (defun cartesian-helper (thing list) diff --git a/lisp/euler007.lisp b/lisp/euler007.lisp new file mode 100644 index 0000000..6da7cbf --- /dev/null +++ b/lisp/euler007.lisp @@ -0,0 +1,5 @@ +(load "euler.lisp") + +(defun solution () + (first (reverse (loop for i from 2 when (prime i) collect i into prime-list when (eq 10001 (length prime-list)) return prime-list))) +)