From a722b88b923ab37d1042772f5d23122fc1c77ff7 Mon Sep 17 00:00:00 2001 From: seasharp Date: Thu, 25 Aug 2022 21:31:49 -0400 Subject: [PATCH] On branch euler2 Initial commit Changes to be committed: new file: euler1.scm new file: euler2.scm --- euler1.scm | 14 ++++++++++++++ euler2.scm | 22 ++++++++++++++++++++++ 2 files changed, 36 insertions(+) create mode 100755 euler1.scm create mode 100755 euler2.scm diff --git a/euler1.scm b/euler1.scm new file mode 100755 index 0000000..20e6e3c --- /dev/null +++ b/euler1.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) diff --git a/euler2.scm b/euler2.scm new file mode 100755 index 0000000..35042f1 --- /dev/null +++ b/euler2.scm @@ -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)