<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    莊周夢(mèng)蝶

    生活、程序、未來(lái)
       :: 首頁(yè) ::  ::  :: 聚合  :: 管理
        第一章兩天前就讀完了,因?yàn)楣ぷ魃系氖虑橥系浆F(xiàn)在才來(lái)做最后這七道題,這些題目都是要求寫(xiě)一個(gè)過(guò)程返回另一個(gè)過(guò)程作為結(jié)果。

    習(xí)題1.40,顯而易見(jiàn),要求cubic過(guò)程返回的就是方程本身,照著定義來(lái)就行了:
    (define (cubic a b c)
      (lambda(x) (
    + (* x x x) (* a x x) (* b x) c)))

    習(xí)題1.41,注意到了題目已經(jīng)說(shuō)明了:以有一個(gè)參數(shù)的過(guò)程做參數(shù),那就很簡(jiǎn)單了:
    (define (double g) (lambda(x) (g (g x))))

    返回lambda構(gòu)造的過(guò)程,參數(shù)過(guò)程應(yīng)用兩次即可,那么
    > (((double (double double)) inc) 5)
    21

    習(xí)題1.42,組合應(yīng)用:
    (define (composite f g)
      (lambda(x) (f (g x))))

    習(xí)題1.43,在1.42基礎(chǔ)上使用遞歸即可:
    (define (repeated f n)
      (
    if (= n 1)
          f
          (composite f (repeated f (
    - n 1)))))

    習(xí)題1.44,在1.43基礎(chǔ)上,首先定義smooth過(guò)程:
    (define (smooth f)
      (lambda(x) (
    / (+ (f (- x dx)) (f x) (f (+ x dx))) 3)))

    然后使用repeated過(guò)程產(chǎn)生n次平滑函數(shù):
    (define (repeate-smooth n)
      (repeated smooth n))

    習(xí)題1.45,不是一下子能說(shuō)清楚,經(jīng)過(guò)測(cè)試可以知道n次方根搜索不動(dòng)點(diǎn),平均阻尼需要經(jīng)過(guò)log2(n)(以2為底的對(duì)數(shù))重復(fù)才會(huì)收斂,因此:
    (define (nth-root-test x n k)
      (fixed
    -point ((repeated average-damp k) (lambda (y) (/ x (fast-expt y (- n 1)))))
                   
    1.0))

    習(xí)題1.46,這題很有趣,產(chǎn)生過(guò)程的過(guò)程也是遞歸的,相當(dāng)好玩,iterative-improve產(chǎn)生的過(guò)程需要遞歸調(diào)用自身,仍然使用iterative-improve產(chǎn)生:
    (define (iterative-improve good-enough improve-it)
      (lambda(guess) 
        (
    if (good-enough guess)
            guess
            ((iterative
    -improve good-enough improve-it) (improve-it guess)))))
    如果猜測(cè)結(jié)果足夠,返回猜測(cè)結(jié)果,如果沒(méi)有,遞歸調(diào)用lambda產(chǎn)生的這個(gè)過(guò)程應(yīng)用于改進(jìn)后的猜測(cè)值。
    重寫(xiě)sqrt如下:

    (define (sqrtt x)
      (define (good
    -enough? guess)
          (
    < (abs (- (square guess) x)) 0.0001))
      (define (improve guess)
        (average guess (
    / x guess)))
      (iterative
    -improve good-enough? improve))
    注意,這里的sqrrt過(guò)程產(chǎn)生的是一個(gè)以初始猜測(cè)值為參數(shù)的過(guò)程,所有調(diào)用應(yīng)該這樣:
    > ((sqrtt 41.0)
    2.000000000929222947

    下面的fixed-point過(guò)程也是如此。


    重寫(xiě)fixed-point過(guò)程如下:
    (define (fixed-point f)
      (define tolerance 
    0.00001)
      (define (good
    -enough? guess)
        (
    < (abs (- guess (f guess))) tolerance))
      (define (improve guess) (f guess))
      (iterative
    -improve good-enough? improve))




    主站蜘蛛池模板: 久久亚洲精品人成综合网| 国产精品亚洲一区二区麻豆| 亚洲精品视频免费看| 精品久久亚洲中文无码| 亚洲男人在线无码视频| 99国产精品免费视频观看| 亚洲AV无码一区二区三区牲色 | xvideos亚洲永久网址| 日韩视频免费在线观看| 亚洲狠狠色丁香婷婷综合| 亚洲成a人片在线观看无码专区| 久久精品免费一区二区喷潮| www免费黄色网| 亚洲影视自拍揄拍愉拍| 亚洲色精品88色婷婷七月丁香| 久久久久久免费视频| 无码中文字幕av免费放| 美女一级毛片免费观看| 久久亚洲春色中文字幕久久久| 亚洲av日韩av欧v在线天堂| 6080午夜一级毛片免费看| 特级毛片aaaa免费观看| 国产.亚洲.欧洲在线| 亚洲高清国产拍精品26U| 国产在线a不卡免费视频| 精品免费久久久久久久| 三年片在线观看免费| 国产偷国产偷亚洲高清在线| 亚洲精品在线免费看| 国产精品亚洲一区二区三区在线| 国产精品色午夜视频免费看| 成人免费在线看片| 国产精品白浆在线观看免费| 男人j进女人p免费视频| 亚洲AV成人精品一区二区三区| 亚洲无砖砖区免费| 亚洲a在线视频视频| 亚洲无线观看国产精品| 亚洲国产成人a精品不卡在线| 在线播放免费播放av片| 欧洲乱码伦视频免费|