summaryrefslogtreecommitdiff
path: root/euler7.scm
diff options
context:
space:
mode:
authorIru Cai <mytbk920423@gmail.com>2018-05-24 21:39:58 +0800
committerIru Cai <mytbk920423@gmail.com>2018-05-24 21:39:58 +0800
commit1eefd58ca4fdb5d2f51f657bfd70c9a89a4707db (patch)
treeabde0e4da3c7fe138f3874a94d8eb7d0e44c3224 /euler7.scm
downloadproject_euler-1eefd58ca4fdb5d2f51f657bfd70c9a89a4707db.tar.xz
initial commit
Diffstat (limited to 'euler7.scm')
-rw-r--r--euler7.scm16
1 files changed, 16 insertions, 0 deletions
diff --git a/euler7.scm b/euler7.scm
new file mode 100644
index 0000000..50daa8a
--- /dev/null
+++ b/euler7.scm
@@ -0,0 +1,16 @@
+(load "../sicp/chapter01/miller-rabin.scm")
+
+(define (nth-prime n)
+ (define (try-iter p nth)
+ (if (prime? p 5)
+ (if (= nth (- n 1))
+ p
+ (try-iter (+ p 2) (+ nth 1)))
+ (try-iter (+ p 2) nth)))
+ (if (= n 1)
+ 2
+ (try-iter 3 1)))
+
+(display (nth-prime (read)))
+(newline)
+(exit)