Код Ревью
Сравни свои решения
#| BEGIN (Введите свое решение) |#
(define (square x) (* x x))
(define (expmod base exp m)
(cond ((= exp 0) 1)
((even? exp)
(remainder
(square (expmod base (/ exp 2) m))
m))
(else
(remainder
(* base (expmod base (- exp 1) m))
m))))
(define (carmichael-test n)
(define (test-iter n a)
(cond
[(= a n) #t]
[(= (expmod a n n) a) (test-iter n (+ a 1))]
[else #f]))
(test-iter n 1))
#| END |#
#| BEGIN (Введите свое решение) |#
(define (square x) (* x x))
(define (expmod base exp m)
(cond ((= exp 0) 1)
((even? exp)
(remainder
(square (expmod base (/ exp 2) m))
m))
(else
(remainder
(* base (expmod base (- exp 1) m))
m))))
(define (carmichael-test n)
(define (carmichael-test-iter n a)
(cond
[(= a n) #t]
[(= (expmod a n n) a) (carmichael-test-iter n (+ a 1))]
[else #f]))
(carmichael-test-iter n 1))
#| END |#
#| BEGIN (Введите свое решение) |#
(define (square x) (* x x))
(define (expmod base exp m)
(cond ((= exp 0) 1)
((even? exp)
(remainder
(square (expmod base (/ exp 2) m))
m))
(else
(remainder
(* base (expmod base (- exp 1) m))
m))))
(define (carmichael-test n)
(define (test-iter n a)
(cond
[(= a n) #t]
[(= (expmod a n n) a) (test-iter n (+ a 1))]
[else #f]))
(test-iter n 1))
#| END |#
#| BEGIN (Введите свое решение) |#
(define (square x) (* x x))
(define (expmod base exp m)
(cond ((= exp 0) 1)
((even? exp)
(remainder
(square (expmod base (/ exp 2) m))
m))
(else
(remainder
(* base (expmod base (- exp 1) m))
m))))
(define (carmichael-test n)
(define (carmichael-test-iter n a)
(cond
[(= a n) #t]
[(= (expmod a n n) a) (carmichael-test-iter n (+ a 1))]
[else #f]))
(carmichael-test-iter n 1))
#| END |#