On branch euler2

Initial commit

 Changes to be committed:
	new file:   euler1.scm
	new file:   euler2.scm
This commit is contained in:
seasharp 2022-08-25 21:31:49 -04:00
commit a722b88b92
2 changed files with 36 additions and 0 deletions

14
euler1.scm Executable file
View File

@ -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)

22
euler2.scm Executable file
View File

@ -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)