diff options
author | Iru Cai <mytbk920423@gmail.com> | 2018-05-27 13:25:10 +0800 |
---|---|---|
committer | Iru Cai <mytbk920423@gmail.com> | 2018-05-27 13:25:10 +0800 |
commit | 12b78407f3ce4d6ee5f67fb0c6ce5c754cf78a58 (patch) | |
tree | c5add6603cb45857977a797f251d9d123464fb57 /euler57.scm | |
parent | 1c76beb0d4ccf57d2db84cf417f37a3a155fb905 (diff) | |
download | project_euler-12b78407f3ce4d6ee5f67fb0c6ce5c754cf78a58.tar.xz |
57, 59, 67, 206
Diffstat (limited to 'euler57.scm')
-rw-r--r-- | euler57.scm | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/euler57.scm b/euler57.scm new file mode 100644 index 0000000..aa8972a --- /dev/null +++ b/euler57.scm @@ -0,0 +1,17 @@ +(define (expension n) + (define (e n) + (if (= n 1) (/ 1 2) + (/ 1 (+ 2 (e (- n 1)))))) + (+ 1 (e n))) + +(define (digits n) + (if (< n 10) 1 (+ 1 (digits (quotient n 10))))) + +(define (solve n) + (if (= n 0) 0 + (+ (solve (- n 1)) + (let ((t (expension n))) + (if (> (digits (numerator t)) (digits (denominator t))) 1 0))))) + +(display (solve 1000)) +(newline) |