Skip to content

Instantly share code, notes, and snippets.

@refik
Last active December 27, 2015 23:39
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save refik/7407519 to your computer and use it in GitHub Desktop.
Save refik/7407519 to your computer and use it in GitHub Desktop.
euler 1
(define null ())
(define range
(lambda (x)
(cond
((= x 0) (cons 0 null))
(else
(cons x (range (- x 1)))))))
(define sum
(lambda (list)
(cond
((null? list) 0)
(else (+ (car list) (sum (cdr list)))))))
(define divisible?
(lambda (x)
(cond
((or (= (mod x 5) 0) (= (mod x 3) 0)) #t)
(else #f))))
(define filter
(lambda (list predicate)
(cond
((null? list) null)
((predicate (car list)) (cons (car list) (filter (cdr list) predicate)))
(else (filter (cdr list) predicate)))))
(sum (filter (range 999) divisible?))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment