`
SavageGarden
  • 浏览: 215617 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

SICP学习笔记 1.2.5 最大公约数

    博客分类:
  • SICP
 
阅读更多

    练习 1.20

 

(define (gcd a b)
  (if (= b 0)
      a
      (gcd b (remainder a b))))
正则序      
(gcd 206 40)
--> (if (= 40 0) 206 (gcd 40 (r 206 40))) 
--> (gcd 
         40 
         (r 206 40))

--> (if (= (r 206 40) 0) 40 (gcd (r 206 40) (r 40 (r 206 40)))) 
--> (gcd 
         (r 206 40) 
         (r 40 (r 206 40)))
         
--> (gcd 
         (r 40 (r 206 40)) 
         (r (r 206 40) (r 40 (r 206 40))))
         
--> (gcd 
         (r (r 206 40) (r 40 (r 206 40))) 
         (r (r 40 (r 206 40)) (r (r 206 40) (r 40 (r 206 40)))))
         
--> (gcd (r (r 40 (r 206 40)) (r (r 206 40) (r 40 (r 206 40))))
         (r (r (r 206 40) (r 40 (r 206 40))) (r (r 40 (r 206 40)) (r (r 206 40) (r 40 (r 206 40))))))
         
--> 12 + (1 + 2 + 4 + 7) = 26

应用序
(gcd 206 40)
--> (if (= 40 0) 206 (gcd 40 (r 206 40)))
--> (gcd 40 (r 206 40))
--> (gcd 40 6)

--> (if (= 6 0) 40 (gcd 6 (r 40 6)))
--> (gcd 6 (r 40 6))
--> (gcd 6 4)

--> (gcd 4 2)
--> (gcd 2 0)
--> 1 + 1 + 1 + 1 = 4
 
0
1
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics