【SICP练习】21 练习1.27



练习1.27

这道题的场景是在注释47中,博主更关心的问题是:(第三行)撞上能欺骗费马检查的值的概率有多少,居然会比什么宇宙射线造成计算机出差。后者个人感觉是永远不会发生的,前者倒是还有可能发生。希望把前者的概率算出来的童鞋将过程列出来啦!

言归正传,题目的意思就是要去验算注释47中的那几个Carmichael,那就来code吧:

(define (find-carmichael n)

  (define (find-carmichael-test x n)

      (cond((= x n) #t)

             ((same-remainder?x n)

             (find-carmichael-test(+ x 1) n))

      ((else#f)))

  (define (same-remainder? x n)

      (= (expmod x n n) x))

 (find-carmichael-test 1 n))

当然了,这里要load保存好的expmod函数。然后就是测试了:

(carmichael-test 6601)

;Value: #t

其他的都一样的返回结果,不然就是函数写错了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值