Initial commit Changes to be committed: new file: euler1.scm new file: euler2.scmeuler2
commit
a722b88b92
2 changed files with 36 additions and 0 deletions
@ -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…
Reference in new issue