重複の可能性:
スキームのモジュロ m の乗法逆数
x と y をペアとして解くためのコードを作成しました。ax + by = 1 を使用して、e モジュロ n の乗法逆数を求めるモジュラー逆数コードを作成する必要があります。
引用符
(define (ax+by=1 a b)
(if (= b 0)
(cons 1 0)
(let* ((q (quotient a b))
(r (remainder a b))
(e (ax+by=1 b r))
(s (car e))
(t (cdr e)))
(cons t (- s (* q t))))))
編集:以下の機能で問題が解決しました。
引用符
(define inverse-mod (lambda (a m)
(if (not (= 1 (gcd a m)))
(display "**Error** No inverse exists.")
(if (> 0(car (ax+by=1 a m)))
(+ (car (ax+by=1 a m)) m)
(car (ax+by=1 a m))))))