1
0
Fork 0
This commit is contained in:
Darcy Shen 2024-02-28 14:02:46 +08:00
parent e9f886c890
commit 84a2ac6180
1 changed files with 14 additions and 64 deletions

View File

@ -7,7 +7,7 @@
<assign|dfn|<macro|x|<strong|<arg|x>>>>
</hide-preamble>
<screens|<\hidden>
<screens|<\shown>
<tit|\<#96F6\>\<#57FA\>\<#7840\>SICP\<#FF1A\>\<#7B2C\>3\<#8BFE\>>
<\wide-tabular>
@ -57,7 +57,7 @@
Tree Recursion
</cell>>>>
</wide-tabular>
</hidden>|<\hidden>
</shown>|<\hidden>
<tit|\<#6761\>\<#4EF6\>\<#8868\>\<#8FBE\>\<#5F0F\>\<#548C\>\<#8C13\>\<#8BCD\>\V\<#77ED\>\<#8DEF\>\<#8FD0\>\<#7B97\>>
<\itemize>
@ -349,8 +349,6 @@
</with>
\;
\;
</hidden>|<\hidden>
<tit|\<#5206\>\<#6CBB\>\<#6CD5\>\<#FF1A\>\<#627E\>\<#96F6\>\<#95EE\>\<#9898\>>
@ -393,73 +391,25 @@
f<around*|(|n,<around*|[|1,5,10,50|]>|)>=f<around*|(|n,<around*|[|5,10,50|]>|)>+f<around*|(|n-1,<around*|[|1,5,10,50|]>|)>
</equation*>
</folded-documentation>
</hidden>|<\shown>
<tit|\<#5206\>\<#6CBB\>\<#6CD5\>\<#FF1A\>\<#627E\>\<#96F6\>\<#95EE\>\<#9898\>>
</hidden>|<\hidden>
<tit|\<#603B\>\<#7ED3\>>
<\equation*>
f<around*|(|n,<around*|[|1,5,10,50|]>|)>=<choice|<tformat|<table|<row|<cell|f<around*|(|n,<around*|[|5,10,50|]>|)>+f<around*|(|n-1,<around*|[|1,5,10,50|]>|)>>|<cell|,n\<geqslant\>2>>|<row|<cell|1>|<cell|,n\<longequal\>1>>|<row|<cell|1>|<cell|,n=0>>>>>
</equation*>
<\itemize>
<item>\<#56DE\>\<#987E\>\<#5E94\>\<#7528\>\<#5E8F\>\<#6C42\>\<#503C\>\<#548C\>\<#6B63\>\<#5219\>\<#5E8F\>\<#6C42\>\<#503C\>
<\session|scheme|default>
<\unfolded-io|Scheme] >
(define (\<#53D6\>\<#53EF\>\<#7528\>\<#6700\>\<#5C0F\>\<#9762\>\<#503C\>
n)
<item>\<#6DF1\>\<#5165\>\<#7406\>\<#89E3\><scm|if>\<#548C\><scm|cond>
\ \ (cond ((= n 4) 1)
<item>\<#7F16\>\<#7A0B\>\<#4E2D\>\<#6700\>\<#57FA\>\<#7840\>\<#7684\>\<#6982\>\<#5FF5\>\<#4E4B\>\<#4E00\>\<#FF1A\>\<#5FAA\>\<#73AF\>
\ \ \ \ \ \ \ \ ((= n 3) 5)
<item>\<#4F7F\>\<#7528\>\<#9012\>\<#5F52\>\<#5B9E\>\<#73B0\>\<#5FAA\>\<#73AF\>\<#FF0C\>\<#57FA\>\<#4E8E\>\<#5FAA\>\<#73AF\>\<#7406\>\<#89E3\>\<#9012\>\<#5F52\>
\ \ \ \ \ \ \ \ ((= n 2) 10)
<item>\<#5B9E\>\<#6218\>\<#FF1A\>\<#7EBF\>\<#6027\>\<#9012\>\<#5F52\>\<#548C\>\<#6811\>\<#5F62\>\<#9012\>\<#5F52\>
\ \ \ \ \ \ \ \ ((= n 1) 50)
<item>\<#6280\>\<#5DE7\>\<#FF1A\>\<#5C06\>\<#9012\>\<#5F52\>\<#5B9E\>\<#73B0\>\<#6539\>\<#4E3A\>\<#8FED\>\<#4EE3\>\<#5B9E\>\<#73B0\>
\ \ \ \ \ \ \ \ (else 0)))
<|unfolded-io>
\<#53D6\>\<#53EF\>\<#7528\>\<#6700\>\<#5C0F\>\<#9762\>\<#503C\>
</unfolded-io>
<\unfolded-io|Scheme] >
(define (\<#627E\>\<#96F6\>\<#65B9\>\<#6CD5\>\<#6570\> n k)
\ \ (if (or (\<less\> n 2) (\<less\>= k 1))
\ \ \ \ \ \ (if (and (\<gtr\>= n (\<#53D6\>\<#53EF\>\<#7528\>\<#6700\>\<#5C0F\>\<#9762\>\<#503C\>
k)) (= (% n (\<#53D6\>\<#53EF\>\<#7528\>\<#6700\>\<#5C0F\>\<#9762\>\<#503C\>
k)) 0))
\ \ \ \ \ \ \ \ \ \ 1
\ \ \ \ \ \ \ \ \ \ 0)
\ \ \ \ \ \ (+ (\<#627E\>\<#96F6\>\<#65B9\>\<#6CD5\>\<#6570\> n (- k
1)) (\<#627E\>\<#96F6\>\<#65B9\>\<#6CD5\>\<#6570\> (- n
(\<#53D6\>\<#53EF\>\<#7528\>\<#6700\>\<#5C0F\>\<#9762\>\<#503C\> k))
k))))
<|unfolded-io>
\<#627E\>\<#96F6\>\<#65B9\>\<#6CD5\>\<#6570\>
</unfolded-io>
<\unfolded-io|Scheme] >
(\<#627E\>\<#96F6\>\<#65B9\>\<#6CD5\>\<#6570\> 50 1)
<|unfolded-io>
<errput|unbound variable % in (% n ((symbol
"å\\x8f;\\x96;å\\x8f;¯ç\\x94;¨æ\\x9c;\\x80;å°\\x8f;é\\x9d;¢å\\x80;¼")
k))>
</unfolded-io>
<\unfolded-io|Scheme] >
(/ 10 5)
<|unfolded-io>
2
</unfolded-io>
<\input|Scheme] >
\;
</input>
</session>
\;
</shown>>
<item>\<#62BD\>\<#8C61\>\<#FF1A\>\<#5229\>\<#7528\>\<#9012\>\<#5F52\>\<#89E3\>\<#51B3\>\<#73B0\>\<#5B9E\>\<#4E2D\>\<#7684\>\<#627E\>\<#96F6\>\<#95EE\>\<#9898\>
</itemize>
</hidden>>
</body>
<\initial>