summaryrefslogtreecommitdiff
path: root/coding-exercises/1/27.rkt
diff options
context:
space:
mode:
Diffstat (limited to 'coding-exercises/1/27.rkt')
-rw-r--r--coding-exercises/1/27.rkt23
1 files changed, 2 insertions, 21 deletions
diff --git a/coding-exercises/1/27.rkt b/coding-exercises/1/27.rkt
index 5a7a8d7..63e614e 100644
--- a/coding-exercises/1/27.rkt
+++ b/coding-exercises/1/27.rkt
@@ -1,24 +1,5 @@
#lang racket
+(require "../../shared/chapter1.rkt")
(require sicp)
-(define (square x)
- (* x x))
-
-(define (expmod base e m)
- (cond
- ((= e 0) 1)
- ((even? e)
- (remainder (square (expmod base (/ e 2) m)) m))
- (else
- (remainder (* base (expmod base (- e 1) m)) m))))
-
-(define (fermat? a n)
- (= (expmod a n n) a))
-
-(define (all-fermat n)
- (define (f a n)
- (cond
- ((= a 0) true)
- ((fermat? (- a 1) n) (f (- a 1) n))
- (else false)))
- (f n n))
+(all-fermat 561)