euler.lisp @ 330b4236a18e

Start repo.
author Steve Losh <steve@stevelosh.com>
date Sat, 09 Apr 2016 16:38:55 +0000
parents (none)
children 8d552510fe9d
(in-package #:euler)

(defun dividesp (n divisor)
  "Return whether `n` is evenly divisible by `divisor`."
  (zerop (mod n divisor)))

(defun problem-1 ()
  (loop :for i :from 1 :below 1000
        :when (or (dividesp i 3)
                  (dividesp i 5))
        :sum i))

(defun problem-2 ()
  (loop :with p = 0
        :with n = 1
        :while (<= n 4000000)
        :when (evenp n) :sum n
        :do (psetf p n
                   n (+ p n))))