From 84a2ac6180d1765bfb383668dcc873252be3bf49 Mon Sep 17 00:00:00 2001 From: Darcy Shen Date: Wed, 28 Feb 2024 14:02:46 +0800 Subject: [PATCH] wip --- SICP/slide03.tm | 78 +++++++++---------------------------------------- 1 file changed, 14 insertions(+), 64 deletions(-) diff --git a/SICP/slide03.tm b/SICP/slide03.tm index 6e20201..8203d1f 100644 --- a/SICP/slide03.tm +++ b/SICP/slide03.tm @@ -7,7 +7,7 @@ >>> - + \<#57FA\>\<#7840\>SICP\<#FF1A\>\<#7B2C\>3\<#8BFE\>> <\wide-tabular> @@ -57,7 +57,7 @@ Tree Recursion >>> - |<\hidden> + |<\hidden> \<#4EF6\>\<#8868\>\<#8FBE\>\<#5F0F\>\<#548C\>\<#8C13\>\<#8BCD\>\V\<#77ED\>\<#8DEF\>\<#8FD0\>\<#7B97\>> <\itemize> @@ -349,8 +349,6 @@ \; - - \; |<\hidden> \<#6CBB\>\<#6CD5\>\<#FF1A\>\<#627E\>\<#96F6\>\<#95EE\>\<#9898\>> @@ -393,73 +391,25 @@ f|)>=f|)>+f|)> - |<\shown> - \<#6CBB\>\<#6CD5\>\<#FF1A\>\<#627E\>\<#96F6\>\<#95EE\>\<#9898\>> + |<\hidden> + \<#7ED3\>> - <\equation*> - f|)>=|)>+f|)>>|2>>||1>>||>>>> - + <\itemize> + \<#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) + \<#6DF1\>\<#5165\>\<#7406\>\<#89E3\>\<#548C\> - \ \ (cond ((= n 4) 1) + \<#7F16\>\<#7A0B\>\<#4E2D\>\<#6700\>\<#57FA\>\<#7840\>\<#7684\>\<#6982\>\<#5FF5\>\<#4E4B\>\<#4E00\>\<#FF1A\>\<#5FAA\>\<#73AF\> - \ \ \ \ \ \ \ \ ((= n 3) 5) + \<#4F7F\>\<#7528\>\<#9012\>\<#5F52\>\<#5B9E\>\<#73B0\>\<#5FAA\>\<#73AF\>\<#FF0C\>\<#57FA\>\<#4E8E\>\<#5FAA\>\<#73AF\>\<#7406\>\<#89E3\>\<#9012\>\<#5F52\> - \ \ \ \ \ \ \ \ ((= n 2) 10) + \<#5B9E\>\<#6218\>\<#FF1A\>\<#7EBF\>\<#6027\>\<#9012\>\<#5F52\>\<#548C\>\<#6811\>\<#5F62\>\<#9012\>\<#5F52\> - \ \ \ \ \ \ \ \ ((= n 1) 50) + \<#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|Scheme] > - (define (\<#627E\>\<#96F6\>\<#65B9\>\<#6CD5\>\<#6570\> n k) - - \ \ (if (or (\ n 2) (\= k 1)) - - \ \ \ \ \ \ (if (and (\= 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|Scheme] > - (\<#627E\>\<#96F6\>\<#65B9\>\<#6CD5\>\<#6570\> 50 1) - <|unfolded-io> - - - - <\unfolded-io|Scheme] > - (/ 10 5) - <|unfolded-io> - 2 - - - <\input|Scheme] > - \; - - - - \; - > + \<#62BD\>\<#8C61\>\<#FF1A\>\<#5229\>\<#7528\>\<#9012\>\<#5F52\>\<#89E3\>\<#51B3\>\<#73B0\>\<#5B9E\>\<#4E2D\>\<#7684\>\<#627E\>\<#96F6\>\<#95EE\>\<#9898\> + + > <\initial>