On branch euler2

Initial commit

 Changes to be committed:
	new file:   euler1.scm
	new file:   euler2.scm
euler2
seasharp 2 years ago
commit a722b88b92
  1. 14
      euler1.scm
  2. 22
      euler2.scm

@ -0,0 +1,14 @@
#!/run/current-system/profile/bin/env gxi-script
(define multiple-of-3-or-5
(lambda (x) (case
(or (= 0 (modulo x 3)) (= 0 (modulo x 5)))
((#t) #t)
((#f) #f))))
(define countdown (lambda (x) (if (> x 0)
((lambda ()
(if (multiple-of-3-or-5 x)
(println x)))))
(if (not (eqv? 2 (- -1 x)))
(countdown (- x 1)))))
(countdown 1000)

@ -0,0 +1,22 @@
#!/run/current-system/profile/bin/env gxi-script
;;
;;
;;Each new term in the Fibonacci sequence is generated by adding the previous two terms. By starting with 1 and 2, the first 10 terms will be:
;;
;;1, 2, 3, 5, 8, 13, 21, 34, 55, 89, ...
;;
;;By considering the terms in the Fibonacci sequence whose values do not exceed four million, find the sum of the even-valued terms.
(define increment (lambda (current next largest)
(if (eqv? largest 0)
(println current)
(begin
(println (string-append "current is: " (number->string current) "next is: " (number->string next) "largest is: " (number->string largest)))
(increment next (+ current next) (- largest 1))))))
(define fibbonacci (lambda (integer) (increment 1 2 integer)))
(fibbonacci 10)
Loading…
Cancel
Save