PasteRack.org
Paste #
74701
2025-02-15 04:29:10
Fork
as a new paste.
Paste viewed 166 times.
Tweet
Embed:
<link type="text/css" rel="stylesheet" href="http://pasterack.org/scribble.css"/><link type="text/css" rel="stylesheet" href="http://pasterack.org/racket.css"/><link type="text/css" rel="stylesheet" href="http://fonts.googleapis.com/css?family=Droid+Sans+Mono"/><div style="font-family:'Droid Sans Mono',monospace;background-color:transparent"><ol start="0" style="font-size:70%;color:#A0A0A0"><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><a class="RktModLink" data-pltdoc="x" href="http://docs.racket-lang.org/guide/Module_Syntax.html#%28part._hash-lang%29"><span class="RktMod">#lang</span></a><span class="RktMeta"></span><span class="hspace"> </span><span class="RktMeta"></span><a class="RktModLink" data-pltdoc="x" href="http://docs.racket-lang.org/scheme/scheme.html"><span class="RktSym">scheme</span></a><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;-------------------------------------------------------------------------------</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Name:</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Pledge:</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;-------------------------------------------------------------------------------</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">This</span><span class="hspace"> </span><span class="RktCmt">lab</span><span class="hspace"> </span><span class="RktCmt">serves</span><span class="hspace"> </span><span class="RktCmt">as</span><span class="hspace"> </span><span class="RktCmt">an</span><span class="hspace"> </span><span class="RktCmt">introduction</span><span class="hspace"> </span><span class="RktCmt">to</span><span class="hspace"> </span><span class="RktCmt">using</span><span class="hspace"> </span><span class="RktCmt">recursion</span><span class="hspace"> </span><span class="RktCmt">in</span><span class="hspace"> </span><span class="RktCmt">Scheme.</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">You</span><span class="hspace"> </span><span class="RktCmt">should</span><span class="hspace"> </span><span class="RktCmt">implement</span><span class="hspace"> </span><span class="RktCmt">every</span><span class="hspace"> </span><span class="RktCmt">function</span><span class="hspace"> </span><span class="RktCmt">in</span><span class="hspace"> </span><span class="RktCmt">this</span><span class="hspace"> </span><span class="RktCmt">program</span><span class="hspace"> </span><span class="RktCmt">recursively.</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">NOTE:</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="hspace"> </span><span class="RktCmt">empty</span><span class="hspace"> </span><span class="RktCmt">list</span><span class="hspace"> </span><span class="RktCmt">is</span><span class="hspace"> </span><span class="RktCmt">a</span><span class="hspace"> </span><span class="RktCmt">valid</span><span class="hspace"> </span><span class="RktCmt">input</span><span class="hspace"> </span><span class="RktCmt">for</span><span class="hspace"> </span><span class="RktCmt">each</span><span class="hspace"> </span><span class="RktCmt">function!</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Also,</span><span class="hspace"> </span><span class="RktCmt">just</span><span class="hspace"> </span><span class="RktCmt">because</span><span class="hspace"> </span><span class="RktCmt">your</span><span class="hspace"> </span><span class="RktCmt">code</span><span class="hspace"> </span><span class="RktCmt">works</span><span class="hspace"> </span><span class="RktCmt">for</span><span class="hspace"> </span><span class="RktCmt">provided</span><span class="hspace"> </span><span class="RktCmt">test</span><span class="hspace"> </span><span class="RktCmt">cases</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt">doesn't</span><span class="hspace"> </span><span class="RktCmt">mean</span><span class="hspace"> </span><span class="RktCmt">it</span><span class="hspace"> </span><span class="RktCmt">always</span><span class="hspace"> </span><span class="RktCmt">works.</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Always</span><span class="hspace"> </span><span class="RktCmt">come</span><span class="hspace"> </span><span class="RktCmt">up</span><span class="hspace"> </span><span class="RktCmt">with</span><span class="hspace"> </span><span class="RktCmt">your</span><span class="hspace"> </span><span class="RktCmt">own</span><span class="hspace"> </span><span class="RktCmt">test</span><span class="hspace"> </span><span class="RktCmt">cases</span><span class="hspace"> </span><span class="RktCmt">too!</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Implement</span><span class="hspace"> </span><span class="RktCmt">your</span><span class="hspace"> </span><span class="RktCmt">version</span><span class="hspace"> </span><span class="RktCmt">of</span><span class="hspace"> </span><span class="RktCmt">multiplication</span><span class="hspace"> </span><span class="RktCmt">denoted</span><span class="hspace"> </span><span class="RktCmt">by</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="hspace"> </span><span class="RktCmt">symbol</span><span class="hspace"> </span><span class="RktCmt">@.</span><span class="hspace"> </span><span class="RktCmt">@</span><span class="hspace"> </span><span class="RktCmt">should</span><span class="hspace"> </span><span class="RktCmt">take</span><span class="hspace"> </span><span class="RktCmt">as</span><span class="hspace"> </span><span class="RktCmt">arguments</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">an</span><span class="hspace"> </span><span class="RktCmt">integer</span><span class="hspace"> </span><span class="RktCmt">a</span><span class="hspace"> </span><span class="RktCmt">and</span><span class="hspace"> </span><span class="RktCmt">a</span><span class="hspace"> </span><span class="RktCmt">non-negative</span><span class="hspace"> </span><span class="RktCmt">integer</span><span class="hspace"> </span><span class="RktCmt">b.</span><span class="hspace"> </span><span class="RktCmt">The</span><span class="hspace"> </span><span class="RktCmt">return</span><span class="hspace"> </span><span class="RktCmt">value</span><span class="hspace"> </span><span class="RktCmt">of</span><span class="hspace"> </span><span class="RktCmt">@</span><span class="hspace"> </span><span class="RktCmt">should</span><span class="hspace"> </span><span class="RktCmt">be</span><span class="hspace"> </span><span class="RktCmt">a*b.</span><span class="hspace"> </span><span class="RktCmt">HOWEVER,</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="hspace"> </span><span class="RktCmt">only</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">arithmetic</span><span class="hspace"> </span><span class="RktCmt">operation</span><span class="hspace"> </span><span class="RktCmt">you're</span><span class="hspace"> </span><span class="RktCmt">allowed</span><span class="hspace"> </span><span class="RktCmt">to</span><span class="hspace"> </span><span class="RktCmt">use</span><span class="hspace"> </span><span class="RktCmt">is</span><span class="hspace"> </span><span class="RktCmt">+.</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Examples:</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">(@</span><span class="hspace"> </span><span class="RktCmt">7</span><span class="hspace"> </span><span class="RktCmt">3)</span><span class="hspace"> </span><span class="RktCmt">-></span><span class="hspace"> </span><span class="RktCmt">21</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">(@</span><span class="hspace"> </span><span class="RktCmt">8</span><span class="hspace"> </span><span class="RktCmt">0)</span><span class="hspace"> </span><span class="RktCmt">-></span><span class="hspace"> </span><span class="RktCmt">0</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">(@</span><span class="hspace"> </span><span class="RktCmt">-3</span><span class="hspace"> </span><span class="RktCmt">4)</span><span class="hspace"> </span><span class="RktCmt">-></span><span class="hspace"> </span><span class="RktCmt">12</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">(@</span><span class="hspace"> </span><span class="RktCmt">0</span><span class="hspace"> </span><span class="RktCmt">4)</span><span class="hspace"> </span><span class="RktCmt">-></span><span class="hspace"> </span><span class="RktCmt">0</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">(@</span><span class="hspace"> </span><span class="RktCmt">-5</span><span class="hspace"> </span><span class="RktCmt">1)</span><span class="hspace"> </span><span class="RktCmt">-></span><span class="hspace"> </span><span class="RktCmt">-5</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Type</span><span class="hspace"> </span><span class="RktCmt">signature:</span><span class="hspace"> </span><span class="RktCmt">(@integer</span><span class="hspace"> </span><span class="RktCmt">integer)</span><span class="hspace"> </span><span class="RktCmt">-></span><span class="hspace"> </span><span class="RktCmt">integer</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktPn">(</span><span class="RktSym"><a class="RktStxLink" data-pltdoc="x" href="http://docs.racket-lang.org/reference/define.html#%28form._%28%28lib._racket%2Fprivate%2Fbase..rkt%29._define%29%29">define</a></span><span class="RktMeta"></span><span class="hspace"> </span><span class="RktMeta"></span><span class="RktPn">(</span><span class="RktSym">@</span><span class="RktMeta"></span><span class="hspace"> </span><span class="RktMeta"></span><span class="RktSym">a</span><span class="RktMeta"></span><span class="hspace"> </span><span class="RktMeta"></span><span class="RktSym">b</span><span class="RktPn">)</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta">   </span><span class="RktVal">"Your</span><span class="hspace"> </span><span class="RktVal">code</span><span class="hspace"> </span><span class="RktVal">comes</span><span class="hspace"> </span><span class="RktVal">here"</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta">  </span><span class="RktPn">)</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Implement</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="hspace"> </span><span class="RktCmt">"power"</span><span class="hspace"> </span><span class="RktCmt">function</span><span class="hspace"> </span><span class="RktCmt">which</span><span class="hspace"> </span><span class="RktCmt">takes</span><span class="hspace"> </span><span class="RktCmt">as</span><span class="hspace"> </span><span class="RktCmt">its</span><span class="hspace"> </span><span class="RktCmt">arguments</span><span class="hspace"> </span><span class="RktCmt">a</span><span class="hspace"> </span><span class="RktCmt">positive</span><span class="hspace"> </span><span class="RktCmt">integer</span><span class="hspace"> </span><span class="RktCmt">x</span><span class="hspace"> </span><span class="RktCmt">and</span><span class="hspace"> </span><span class="RktCmt">a</span><span class="hspace"> </span><span class="RktCmt">non-negative</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">integer</span><span class="hspace"> </span><span class="RktCmt">n.</span><span class="hspace"> </span><span class="RktCmt">"power"</span><span class="hspace"> </span><span class="RktCmt">shoud</span><span class="hspace"> </span><span class="RktCmt">return</span><span class="hspace"> </span><span class="RktCmt">x</span><span class="hspace"> </span><span class="RktCmt">raised</span><span class="hspace"> </span><span class="RktCmt">to</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="hspace"> </span><span class="RktCmt">power</span><span class="hspace"> </span><span class="RktCmt">of</span><span class="hspace"> </span><span class="RktCmt">n.</span><span class="hspace"> </span><span class="RktCmt">HOWEVER,</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="hspace"> </span><span class="RktCmt">only</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">arithmetic</span><span class="hspace"> </span><span class="RktCmt">operation</span><span class="hspace"> </span><span class="RktCmt">you're</span><span class="hspace"> </span><span class="RktCmt">allowed</span><span class="hspace"> </span><span class="RktCmt">to</span><span class="hspace"> </span><span class="RktCmt">use</span><span class="hspace"> </span><span class="RktCmt">is</span><span class="hspace"> </span><span class="RktCmt">*.</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Examples:</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">(power</span><span class="hspace"> </span><span class="RktCmt">3</span><span class="hspace"> </span><span class="RktCmt">2)</span><span class="hspace"> </span><span class="RktCmt">-></span><span class="hspace"> </span><span class="RktCmt">9</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">(power</span><span class="hspace"> </span><span class="RktCmt">2</span><span class="hspace"> </span><span class="RktCmt">10)</span><span class="hspace"> </span><span class="RktCmt">-></span><span class="hspace"> </span><span class="RktCmt">1024</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">(power</span><span class="hspace"> </span><span class="RktCmt">3</span><span class="hspace"> </span><span class="RktCmt">1)</span><span class="hspace"> </span><span class="RktCmt">-></span><span class="hspace"> </span><span class="RktCmt">3</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">(power</span><span class="hspace"> </span><span class="RktCmt">7</span><span class="hspace"> </span><span class="RktCmt">0)</span><span class="hspace"> </span><span class="RktCmt">-></span><span class="hspace"> </span><span class="RktCmt">1</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Type</span><span class="hspace"> </span><span class="RktCmt">signature:</span><span class="hspace"> </span><span class="RktCmt">(power</span><span class="hspace"> </span><span class="RktCmt">integer</span><span class="hspace"> </span><span class="RktCmt">integer)</span><span class="hspace"> </span><span class="RktCmt">-></span><span class="hspace"> </span><span class="RktCmt">integer</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktPn">(</span><span class="RktSym"><a class="RktStxLink" data-pltdoc="x" href="http://docs.racket-lang.org/reference/define.html#%28form._%28%28lib._racket%2Fprivate%2Fbase..rkt%29._define%29%29">define</a></span><span class="RktMeta"></span><span class="hspace"> </span><span class="RktMeta"></span><span class="RktPn">(</span><span class="RktSym">power</span><span class="RktMeta"></span><span class="hspace"> </span><span class="RktMeta"></span><span class="RktSym">x</span><span class="RktMeta"></span><span class="hspace"> </span><span class="RktMeta"></span><span class="RktSym">n</span><span class="RktPn">)</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"> </span><span class="RktVal">"Your</span><span class="hspace"> </span><span class="RktVal">code</span><span class="hspace"> </span><span class="RktVal">comes</span><span class="hspace"> </span><span class="RktVal">here"</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta">  </span><span class="RktPn">)</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Implement</span><span class="hspace"> </span><span class="RktCmt">"nth",</span><span class="hspace"> </span><span class="RktCmt">which</span><span class="hspace"> </span><span class="RktCmt">returns</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="hspace"> </span><span class="RktCmt">element</span><span class="hspace"> </span><span class="RktCmt">at</span><span class="hspace"> </span><span class="RktCmt">index</span><span class="hspace"> </span><span class="RktCmt">n</span><span class="hspace"> </span><span class="RktCmt">of</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="hspace"> </span><span class="RktCmt">provided</span><span class="hspace"> </span><span class="RktCmt">list.</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">The</span><span class="hspace"> </span><span class="RktCmt">first</span><span class="hspace"> </span><span class="RktCmt">element</span><span class="hspace"> </span><span class="RktCmt">of</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="hspace"> </span><span class="RktCmt">list</span><span class="hspace"> </span><span class="RktCmt">is</span><span class="hspace"> </span><span class="RktCmt">at</span><span class="hspace"> </span><span class="RktCmt">index</span><span class="hspace"> </span><span class="RktCmt">0,</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="hspace"> </span><span class="RktCmt">second</span><span class="hspace"> </span><span class="RktCmt">at</span><span class="hspace"> </span><span class="RktCmt">index</span><span class="hspace"> </span><span class="RktCmt">1,</span><span class="hspace"> </span><span class="RktCmt">etc.</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">You</span><span class="hspace"> </span><span class="RktCmt">may</span><span class="hspace"> </span><span class="RktCmt">assume</span><span class="hspace"> </span><span class="RktCmt">that</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="hspace"> </span><span class="RktCmt">"n"</span><span class="hspace"> </span><span class="RktCmt">provided</span><span class="hspace"> </span><span class="RktCmt">is</span><span class="hspace"> </span><span class="RktCmt">non-negative</span><span class="hspace"> </span><span class="RktCmt">and</span><span class="hspace"> </span><span class="RktCmt">less</span><span class="hspace"> </span><span class="RktCmt">than</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="hspace"> </span><span class="RktCmt">list's</span><span class="hspace"> </span><span class="RktCmt">length.</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Examples:</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">(nth</span><span class="hspace"> </span><span class="RktCmt">1</span><span class="hspace"> </span><span class="RktCmt">'(Sandeep</span><span class="hspace"> </span><span class="RktCmt">Owen</span><span class="hspace"> </span><span class="RktCmt">Jared</span><span class="hspace"> </span><span class="RktCmt">Sarvani))</span><span class="hspace"> </span><span class="RktCmt">-></span><span class="hspace"> </span><span class="RktCmt">Owen</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">(nth</span><span class="hspace"> </span><span class="RktCmt">5</span><span class="hspace"> </span><span class="RktCmt">'("zero"</span><span class="hspace"> </span><span class="RktCmt">"one"</span><span class="hspace"> </span><span class="RktCmt">"two"</span><span class="hspace"> </span><span class="RktCmt">"three"</span><span class="hspace"> </span><span class="RktCmt">"four"</span><span class="hspace"> </span><span class="RktCmt">"five"))</span><span class="hspace"> </span><span class="RktCmt">-></span><span class="hspace"> </span><span class="RktCmt">"five"</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">(nth</span><span class="hspace"> </span><span class="RktCmt">0</span><span class="hspace"> </span><span class="RktCmt">'(a</span><span class="hspace"> </span><span class="RktCmt">b</span><span class="hspace"> </span><span class="RktCmt">c))</span><span class="hspace"> </span><span class="RktCmt">-></span><span class="hspace"> </span><span class="RktCmt">'a</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Type</span><span class="hspace"> </span><span class="RktCmt">signature:</span><span class="hspace"> </span><span class="RktCmt">(nth</span><span class="hspace"> </span><span class="RktCmt">integer</span><span class="hspace"> </span><span class="RktCmt">list)</span><span class="hspace"> </span><span class="RktCmt">-></span><span class="hspace"> </span><span class="RktCmt">element</span><span class="hspace"> </span><span class="RktCmt">from</span><span class="hspace"> </span><span class="RktCmt">list</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktPn">(</span><span class="RktSym"><a class="RktStxLink" data-pltdoc="x" href="http://docs.racket-lang.org/reference/define.html#%28form._%28%28lib._racket%2Fprivate%2Fbase..rkt%29._define%29%29">define</a></span><span class="RktMeta"></span><span class="hspace"> </span><span class="RktMeta"></span><span class="RktPn">(</span><span class="RktSym">nth</span><span class="RktMeta"></span><span class="hspace"> </span><span class="RktMeta"></span><span class="RktSym">n</span><span class="RktMeta"></span><span class="hspace"> </span><span class="RktMeta"></span><span class="RktSym">lst</span><span class="RktPn">)</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"> </span><span class="RktVal">"Your</span><span class="hspace"> </span><span class="RktVal">code</span><span class="hspace"> </span><span class="RktVal">comes</span><span class="hspace"> </span><span class="RktVal">here"</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta">  </span><span class="RktPn">)</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Implement</span><span class="hspace"> </span><span class="RktCmt">"sum</span><span class="hspace"> </span><span class="RktCmt">of</span><span class="hspace"> </span><span class="RktCmt">squares",</span><span class="hspace"> </span><span class="RktCmt">which</span><span class="hspace"> </span><span class="RktCmt">returns</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="hspace"> </span><span class="RktCmt">summation</span><span class="hspace"> </span><span class="RktCmt">of</span><span class="hspace"> </span><span class="RktCmt">squares</span><span class="hspace"> </span><span class="RktCmt">of</span><span class="hspace"> </span><span class="RktCmt">all</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="hspace"> </span><span class="RktCmt">elements</span><span class="hspace"> </span><span class="RktCmt">in</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="hspace"> </span><span class="RktCmt">given</span><span class="hspace"> </span><span class="RktCmt">list.</span><span class="hspace"> </span><span class="RktCmt">You</span><span class="hspace"> </span><span class="RktCmt">may</span><span class="hspace"> </span><span class="RktCmt">assume</span><span class="hspace"> </span><span class="RktCmt">that</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="hspace"> </span><span class="RktCmt">list</span><span class="hspace"> </span><span class="RktCmt">will</span><span class="hspace"> </span><span class="RktCmt">only</span><span class="hspace"> </span><span class="RktCmt">contain</span><span class="hspace"> </span><span class="RktCmt">numbers.</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Note:</span><span class="hspace"> </span><span class="RktCmt">mathematical</span><span class="hspace"> </span><span class="RktCmt">convention</span><span class="hspace"> </span><span class="RktCmt">is</span><span class="hspace"> </span><span class="RktCmt">that</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="hspace"> </span><span class="RktCmt">sum</span><span class="hspace"> </span><span class="RktCmt">of</span><span class="hspace"> </span><span class="RktCmt">squares</span><span class="hspace"> </span><span class="RktCmt">of</span><span class="hspace"> </span><span class="RktCmt">nothing</span><span class="hspace"> </span><span class="RktCmt">is</span><span class="hspace"> </span><span class="RktCmt">0.</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Examples:</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">(sum2</span><span class="hspace"> </span><span class="RktCmt">'(1</span><span class="hspace"> </span><span class="RktCmt">3</span><span class="hspace"> </span><span class="RktCmt">5</span><span class="hspace"> </span><span class="RktCmt">1))</span><span class="hspace"> </span><span class="RktCmt">-></span><span class="hspace"> </span><span class="RktCmt">36</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">(sum2</span><span class="hspace"> </span><span class="RktCmt">'(75050</span><span class="hspace"> </span><span class="RktCmt">344</span><span class="hspace"> </span><span class="RktCmt">0</span><span class="hspace"> </span><span class="RktCmt">-70</span><span class="hspace"> </span><span class="RktCmt">125))</span><span class="hspace"> </span><span class="RktCmt">-></span><span class="hspace"> </span><span class="RktCmt">5632641361</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Type</span><span class="hspace"> </span><span class="RktCmt">signature:</span><span class="hspace"> </span><span class="RktCmt">(sum2</span><span class="hspace"> </span><span class="RktCmt">number-list)</span><span class="hspace"> </span><span class="RktCmt">-></span><span class="hspace"> </span><span class="RktCmt">number</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktPn">(</span><span class="RktSym"><a class="RktStxLink" data-pltdoc="x" href="http://docs.racket-lang.org/reference/define.html#%28form._%28%28lib._racket%2Fprivate%2Fbase..rkt%29._define%29%29">define</a></span><span class="RktMeta"></span><span class="hspace"> </span><span class="RktMeta"></span><span class="RktPn">(</span><span class="RktSym">sum2</span><span class="RktMeta"></span><span class="hspace"> </span><span class="RktMeta"></span><span class="RktSym">lst</span><span class="RktPn">)</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"> </span><span class="RktVal">"Your</span><span class="hspace"> </span><span class="RktVal">code</span><span class="hspace"> </span><span class="RktVal">comes</span><span class="hspace"> </span><span class="RktVal">here"</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktPn">)</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Implement</span><span class="hspace"> </span><span class="RktCmt">"product",</span><span class="hspace"> </span><span class="RktCmt">which</span><span class="hspace"> </span><span class="RktCmt">returns</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="hspace"> </span><span class="RktCmt">result</span><span class="hspace"> </span><span class="RktCmt">of</span><span class="hspace"> </span><span class="RktCmt">multiplying</span><span class="hspace"> </span><span class="RktCmt">all</span><span class="hspace"> </span><span class="RktCmt">elements</span><span class="hspace"> </span><span class="RktCmt">in</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="hspace"> </span><span class="RktCmt">list.</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">You</span><span class="hspace"> </span><span class="RktCmt">may</span><span class="hspace"> </span><span class="RktCmt">assume</span><span class="hspace"> </span><span class="RktCmt">that</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="hspace"> </span><span class="RktCmt">list</span><span class="hspace"> </span><span class="RktCmt">will</span><span class="hspace"> </span><span class="RktCmt">only</span><span class="hspace"> </span><span class="RktCmt">contain</span><span class="hspace"> </span><span class="RktCmt">numbers.</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Note:</span><span class="hspace"> </span><span class="RktCmt">mathematical</span><span class="hspace"> </span><span class="RktCmt">convention</span><span class="hspace"> </span><span class="RktCmt">is</span><span class="hspace"> </span><span class="RktCmt">that</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="hspace"> </span><span class="RktCmt">product</span><span class="hspace"> </span><span class="RktCmt">of</span><span class="hspace"> </span><span class="RktCmt">nothing</span><span class="hspace"> </span><span class="RktCmt">is</span><span class="hspace"> </span><span class="RktCmt">1.</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Examples:</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">(product</span><span class="hspace"> </span><span class="RktCmt">(list</span><span class="hspace"> </span><span class="RktCmt">1</span><span class="hspace"> </span><span class="RktCmt">3</span><span class="hspace"> </span><span class="RktCmt">5</span><span class="hspace"> </span><span class="RktCmt">4))</span><span class="hspace"> </span><span class="RktCmt">-></span><span class="hspace"> </span><span class="RktCmt">60</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">(product</span><span class="hspace"> </span><span class="RktCmt">'(100</span><span class="hspace"> </span><span class="RktCmt">-50</span><span class="hspace"> </span><span class="RktCmt">6789</span><span class="hspace"> </span><span class="RktCmt">4183457))</span><span class="hspace"> </span><span class="RktCmt">-></span><span class="hspace"> </span><span class="RktCmt">-142007447865000</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Type</span><span class="hspace"> </span><span class="RktCmt">signature:</span><span class="hspace"> </span><span class="RktCmt">(product</span><span class="hspace"> </span><span class="RktCmt">number-list)</span><span class="hspace"> </span><span class="RktCmt">-></span><span class="hspace"> </span><span class="RktCmt">number</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktPn">(</span><span class="RktSym"><a class="RktStxLink" data-pltdoc="x" href="http://docs.racket-lang.org/reference/define.html#%28form._%28%28lib._racket%2Fprivate%2Fbase..rkt%29._define%29%29">define</a></span><span class="RktMeta"></span><span class="hspace"> </span><span class="RktMeta"></span><span class="RktPn">(</span><span class="RktSym">product</span><span class="RktMeta"></span><span class="hspace"> </span><span class="RktMeta"></span><span class="RktSym">lst</span><span class="RktPn">)</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"> </span><span class="RktVal">"Your</span><span class="hspace"> </span><span class="RktVal">code</span><span class="hspace"> </span><span class="RktVal">comes</span><span class="hspace"> </span><span class="RktVal">here"</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktPn">)</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Implement</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="hspace"> </span><span class="RktCmt">following</span><span class="hspace"> </span><span class="RktCmt">continued</span><span class="hspace"> </span><span class="RktCmt">fraction</span><span class="hspace"> </span><span class="RktCmt">function</span><span class="hspace"> </span><span class="RktCmt">denoted</span><span class="hspace"> </span><span class="RktCmt">as</span><span class="hspace"> </span><span class="RktCmt">"cf"</span><span class="hspace"> </span><span class="RktCmt">and</span><span class="hspace"> </span><span class="RktCmt">defined</span><span class="hspace"> </span><span class="RktCmt">as</span><span class="hspace"> </span><span class="RktCmt">follows.</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">"cf"</span><span class="hspace"> </span><span class="RktCmt">takes</span><span class="hspace"> </span><span class="RktCmt">as</span><span class="hspace"> </span><span class="RktCmt">its</span><span class="hspace"> </span><span class="RktCmt">only</span><span class="hspace"> </span><span class="RktCmt">argument</span><span class="hspace"> </span><span class="RktCmt">a</span><span class="hspace"> </span><span class="RktCmt">list</span><span class="hspace"> </span><span class="RktCmt">of</span><span class="hspace"> </span><span class="RktCmt">positive</span><span class="hspace"> </span><span class="RktCmt">integers.</span><span class="hspace"> </span><span class="RktCmt">If</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="hspace"> </span><span class="RktCmt">list</span><span class="hspace"> </span><span class="RktCmt">has</span><span class="hspace"> </span><span class="RktCmt">length</span><span class="hspace"> </span><span class="RktCmt">1,</span><span class="hspace"> </span><span class="RktCmt">then</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">only</span><span class="hspace"> </span><span class="RktCmt">element</span><span class="hspace"> </span><span class="RktCmt">of</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="hspace"> </span><span class="RktCmt">list</span><span class="hspace"> </span><span class="RktCmt">is</span><span class="hspace"> </span><span class="RktCmt">returned</span><span class="hspace"> </span><span class="RktCmt">as</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="hspace"> </span><span class="RktCmt">function's</span><span class="hspace"> </span><span class="RktCmt">value.</span><span class="hspace"> </span><span class="RktCmt">Otherwise,</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="hspace"> </span><span class="RktCmt">function</span><span class="hspace"> </span><span class="RktCmt">returns</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">fraction</span><span class="hspace"> </span><span class="RktCmt">built</span><span class="hspace"> </span><span class="RktCmt">according</span><span class="hspace"> </span><span class="RktCmt">to</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="hspace"> </span><span class="RktCmt">pattern</span><span class="hspace"> </span><span class="RktCmt">below</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">(cf</span><span class="hspace"> </span><span class="RktCmt">'(a))</span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt">-> </span><span class="hspace"> </span><span class="RktCmt">a</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">(cf</span><span class="hspace"> </span><span class="RktCmt">'(a</span><span class="hspace"> </span><span class="RktCmt">b))</span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt">-> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt">1</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;; </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt">a</span><span class="hspace"> </span><span class="RktCmt">+</span><span class="hspace"> </span><span class="RktCmt">---</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt">b</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">(cf</span><span class="hspace"> </span><span class="RktCmt">'(a</span><span class="hspace"> </span><span class="RktCmt">b</span><span class="hspace"> </span><span class="RktCmt">c))</span><span class="hspace"> </span><span class="RktCmt">-></span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt">1</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;; </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt">a </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt">+ </span><span class="hspace"> </span><span class="RktCmt">------------</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;; </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt">1</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;; </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt">b</span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt">+</span><span class="hspace"> </span><span class="RktCmt">---</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt">c</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">(cf</span><span class="hspace"> </span><span class="RktCmt">'(a</span><span class="hspace"> </span><span class="RktCmt">b</span><span class="hspace"> </span><span class="RktCmt">c</span><span class="hspace"> </span><span class="RktCmt">d))</span><span class="hspace"> </span><span class="RktCmt">-></span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt">1</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt">a </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt">+ </span><span class="hspace"> </span><span class="RktCmt">----------------</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;; </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt">1</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;; </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt">b</span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt">+</span><span class="hspace"> </span><span class="RktCmt">---------</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt">c </span><span class="hspace"> </span><span class="RktCmt">+ </span><span class="hspace"> </span><span class="RktCmt">1</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;; </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt">---</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt"> </span><span class="hspace"> </span><span class="RktCmt">d</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">and</span><span class="hspace"> </span><span class="RktCmt">so</span><span class="hspace"> </span><span class="RktCmt">on.</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Examples:</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Approximation</span><span class="hspace"> </span><span class="RktCmt">for</span><span class="hspace"> </span><span class="RktCmt">Pi</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">(exact->inexact</span><span class="hspace"> </span><span class="RktCmt">(cf</span><span class="hspace"> </span><span class="RktCmt">'(3</span><span class="hspace"> </span><span class="RktCmt">7</span><span class="hspace"> </span><span class="RktCmt">15</span><span class="hspace"> </span><span class="RktCmt">1</span><span class="hspace"> </span><span class="RktCmt">292</span><span class="hspace"> </span><span class="RktCmt">1)))</span><span class="hspace"> </span><span class="RktCmt">-></span><span class="hspace"> </span><span class="RktCmt">3.141592653921421</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Approximation</span><span class="hspace"> </span><span class="RktCmt">for</span><span class="hspace"> </span><span class="RktCmt">square</span><span class="hspace"> </span><span class="RktCmt">root</span><span class="hspace"> </span><span class="RktCmt">of</span><span class="hspace"> </span><span class="RktCmt">2</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">(exact->inexact</span><span class="hspace"> </span><span class="RktCmt">(cf</span><span class="hspace"> </span><span class="RktCmt">'(1</span><span class="hspace"> </span><span class="RktCmt">2</span><span class="hspace"> </span><span class="RktCmt">2</span><span class="hspace"> </span><span class="RktCmt">2</span><span class="hspace"> </span><span class="RktCmt">2</span><span class="hspace"> </span><span class="RktCmt">2</span><span class="hspace"> </span><span class="RktCmt">2</span><span class="hspace"> </span><span class="RktCmt">2</span><span class="hspace"> </span><span class="RktCmt">2</span><span class="hspace"> </span><span class="RktCmt">2</span><span class="hspace"> </span><span class="RktCmt">2</span><span class="hspace"> </span><span class="RktCmt">2</span><span class="hspace"> </span><span class="RktCmt">2</span><span class="hspace"> </span><span class="RktCmt">2</span><span class="hspace"> </span><span class="RktCmt">2)))</span><span class="hspace"> </span><span class="RktCmt">-></span><span class="hspace"> </span><span class="RktCmt">1.4142135623637995</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Approximation</span><span class="hspace"> </span><span class="RktCmt">for</span><span class="hspace"> </span><span class="RktCmt">golden</span><span class="hspace"> </span><span class="RktCmt">ratio</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">(exact->inexact</span><span class="hspace"> </span><span class="RktCmt">(cf</span><span class="hspace"> </span><span class="RktCmt">'(1</span><span class="hspace"> </span><span class="RktCmt">1</span><span class="hspace"> </span><span class="RktCmt">1</span><span class="hspace"> </span><span class="RktCmt">1</span><span class="hspace"> </span><span class="RktCmt">1</span><span class="hspace"> </span><span class="RktCmt">1</span><span class="hspace"> </span><span class="RktCmt">1</span><span class="hspace"> </span><span class="RktCmt">1</span><span class="hspace"> </span><span class="RktCmt">1</span><span class="hspace"> </span><span class="RktCmt">1</span><span class="hspace"> </span><span class="RktCmt">1</span><span class="hspace"> </span><span class="RktCmt">1</span><span class="hspace"> </span><span class="RktCmt">1</span><span class="hspace"> </span><span class="RktCmt">1</span><span class="hspace"> </span><span class="RktCmt">1</span><span class="hspace"> </span><span class="RktCmt">1)))</span><span class="hspace"> </span><span class="RktCmt">-></span><span class="hspace"> </span><span class="RktCmt">1.618034447821682</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Type</span><span class="hspace"> </span><span class="RktCmt">signature</span><span class="hspace"> </span><span class="RktCmt">(cf</span><span class="hspace"> </span><span class="RktCmt">number-list)</span><span class="hspace"> </span><span class="RktCmt">-></span><span class="hspace"> </span><span class="RktCmt">fraction</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktPn">(</span><span class="RktSym"><a class="RktStxLink" data-pltdoc="x" href="http://docs.racket-lang.org/reference/define.html#%28form._%28%28lib._racket%2Fprivate%2Fbase..rkt%29._define%29%29">define</a></span><span class="RktMeta"></span><span class="hspace"> </span><span class="RktMeta"></span><span class="RktPn">(</span><span class="RktSym">cf</span><span class="RktMeta"></span><span class="hspace"> </span><span class="RktMeta"></span><span class="RktSym">number-list</span><span class="RktPn">)</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"> </span><span class="RktVal">"Your</span><span class="hspace"> </span><span class="RktVal">code</span><span class="hspace"> </span><span class="RktVal">comes</span><span class="hspace"> </span><span class="RktVal">here"</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta">  </span><span class="RktPn">)</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Implement</span><span class="hspace"> </span><span class="RktCmt">"2filter",</span><span class="hspace"> </span><span class="RktCmt">which</span><span class="hspace"> </span><span class="RktCmt">accepts</span><span class="hspace"> </span><span class="RktCmt">a</span><span class="hspace"> </span><span class="RktCmt">predicate</span><span class="hspace"> </span><span class="RktCmt">(a</span><span class="hspace"> </span><span class="RktCmt">function</span><span class="hspace"> </span><span class="RktCmt">that</span><span class="hspace"> </span><span class="RktCmt">returns</span><span class="hspace"> </span><span class="RktCmt">a</span><span class="hspace"> </span><span class="RktCmt">boolean)</span><span class="hspace"> </span><span class="RktCmt">and</span><span class="hspace"> </span><span class="RktCmt">a</span><span class="hspace"> </span><span class="RktCmt">list,</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">and</span><span class="hspace"> </span><span class="RktCmt">returns</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="hspace"> </span><span class="RktCmt">same</span><span class="hspace"> </span><span class="RktCmt">list</span><span class="hspace"> </span><span class="RktCmt">except</span><span class="hspace"> </span><span class="RktCmt">that</span><span class="hspace"> </span><span class="RktCmt">for</span><span class="hspace"> </span><span class="RktCmt">every</span><span class="hspace"> </span><span class="RktCmt">element</span><span class="hspace"> </span><span class="RktCmt">satisfing</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="hspace"> </span><span class="RktCmt">predicate</span><span class="hspace"> </span><span class="RktCmt">a</span><span class="hspace"> </span><span class="RktCmt">new</span><span class="hspace"> </span><span class="RktCmt">copy</span><span class="hspace"> </span><span class="RktCmt">of</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">that</span><span class="hspace"> </span><span class="RktCmt">element</span><span class="hspace"> </span><span class="RktCmt">is</span><span class="hspace"> </span><span class="RktCmt">added.</span><span class="hspace"> </span><span class="RktCmt">The</span><span class="hspace"> </span><span class="RktCmt">new</span><span class="hspace"> </span><span class="RktCmt">copy</span><span class="hspace"> </span><span class="RktCmt">should</span><span class="hspace"> </span><span class="RktCmt">be</span><span class="hspace"> </span><span class="RktCmt">added</span><span class="hspace"> </span><span class="RktCmt">beside</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="hspace"> </span><span class="RktCmt">element</span><span class="hspace"> </span><span class="RktCmt">which</span><span class="hspace"> </span><span class="RktCmt">makes</span><span class="hspace"> </span><span class="RktCmt">the</span><span class="hspace"> </span><span class="RktCmt">predicate</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">return</span><span class="hspace"> </span><span class="RktCmt">#t.</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Examples</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">(2filter</span><span class="hspace"> </span><span class="RktCmt">zero?</span><span class="hspace"> </span><span class="RktCmt">'(1</span><span class="hspace"> </span><span class="RktCmt">0</span><span class="hspace"> </span><span class="RktCmt">2</span><span class="hspace"> </span><span class="RktCmt">34</span><span class="hspace"> </span><span class="RktCmt">56</span><span class="hspace"> </span><span class="RktCmt">1</span><span class="hspace"> </span><span class="RktCmt">0))</span><span class="hspace"> </span><span class="RktCmt">-></span><span class="hspace"> </span><span class="RktCmt">'(1</span><span class="hspace"> </span><span class="RktCmt">0</span><span class="hspace"> </span><span class="RktCmt">0</span><span class="hspace"> </span><span class="RktCmt">2</span><span class="hspace"> </span><span class="RktCmt">34</span><span class="hspace"> </span><span class="RktCmt">56</span><span class="hspace"> </span><span class="RktCmt">1</span><span class="hspace"> </span><span class="RktCmt">0</span><span class="hspace"> </span><span class="RktCmt">0)</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">(2filter</span><span class="hspace"> </span><span class="RktCmt">even?</span><span class="hspace"> </span><span class="RktCmt">'(0</span><span class="hspace"> </span><span class="RktCmt">1</span><span class="hspace"> </span><span class="RktCmt">2</span><span class="hspace"> </span><span class="RktCmt">3</span><span class="hspace"> </span><span class="RktCmt">4</span><span class="hspace"> </span><span class="RktCmt">5</span><span class="hspace"> </span><span class="RktCmt">6</span><span class="hspace"> </span><span class="RktCmt">7</span><span class="hspace"> </span><span class="RktCmt">8</span><span class="hspace"> </span><span class="RktCmt">9))</span><span class="hspace"> </span><span class="RktCmt">-></span><span class="hspace"> </span><span class="RktCmt">'(0</span><span class="hspace"> </span><span class="RktCmt">0</span><span class="hspace"> </span><span class="RktCmt">1</span><span class="hspace"> </span><span class="RktCmt">2</span><span class="hspace"> </span><span class="RktCmt">2</span><span class="hspace"> </span><span class="RktCmt">3</span><span class="hspace"> </span><span class="RktCmt">4</span><span class="hspace"> </span><span class="RktCmt">4</span><span class="hspace"> </span><span class="RktCmt">5</span><span class="hspace"> </span><span class="RktCmt">6</span><span class="hspace"> </span><span class="RktCmt">6</span><span class="hspace"> </span><span class="RktCmt">7</span><span class="hspace"> </span><span class="RktCmt">8</span><span class="hspace"> </span><span class="RktCmt">8</span><span class="hspace"> </span><span class="RktCmt">9)</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">(2filter</span><span class="hspace"> </span><span class="RktCmt">number?</span><span class="hspace"> </span><span class="RktCmt">'(shave</span><span class="hspace"> </span><span class="RktCmt">and</span><span class="hspace"> </span><span class="RktCmt">1</span><span class="hspace"> </span><span class="RktCmt">haircut</span><span class="hspace"> </span><span class="RktCmt">2</span><span class="hspace"> </span><span class="RktCmt">bits))</span><span class="hspace"> </span><span class="RktCmt">-></span><span class="hspace"> </span><span class="RktCmt">'(shave</span><span class="hspace"> </span><span class="RktCmt">and</span><span class="hspace"> </span><span class="RktCmt">1</span><span class="hspace"> </span><span class="RktCmt">1</span><span class="hspace"> </span><span class="RktCmt">haircut</span><span class="hspace"> </span><span class="RktCmt">2</span><span class="hspace"> </span><span class="RktCmt">2</span><span class="hspace"> </span><span class="RktCmt">bits)</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">(2filter</span><span class="hspace"> </span><span class="RktCmt">(lambda</span><span class="hspace"> </span><span class="RktCmt">(x)</span><span class="hspace"> </span><span class="RktCmt">(></span><span class="hspace"> </span><span class="RktCmt">x</span><span class="hspace"> </span><span class="RktCmt">10))</span><span class="hspace"> </span><span class="RktCmt">'(1</span><span class="hspace"> </span><span class="RktCmt">0</span><span class="hspace"> </span><span class="RktCmt">2</span><span class="hspace"> </span><span class="RktCmt">34</span><span class="hspace"> </span><span class="RktCmt">56</span><span class="hspace"> </span><span class="RktCmt">1</span><span class="hspace"> </span><span class="RktCmt">0)</span><span class="hspace"> </span><span class="RktCmt">)</span><span class="hspace"> </span><span class="RktCmt">-></span><span class="hspace"> </span><span class="RktCmt">(1</span><span class="hspace"> </span><span class="RktCmt">0</span><span class="hspace"> </span><span class="RktCmt">2</span><span class="hspace"> </span><span class="RktCmt">34</span><span class="hspace"> </span><span class="RktCmt">34</span><span class="hspace"> </span><span class="RktCmt">56</span><span class="hspace"> </span><span class="RktCmt">56</span><span class="hspace"> </span><span class="RktCmt">1</span><span class="hspace"> </span><span class="RktCmt">0)</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Type</span><span class="hspace"> </span><span class="RktCmt">signature:</span><span class="hspace"> </span><span class="RktCmt">(2filter</span><span class="hspace"> </span><span class="RktCmt">predicate</span><span class="hspace"> </span><span class="RktCmt">list)</span><span class="hspace"> </span><span class="RktCmt">-></span><span class="hspace"> </span><span class="RktCmt">list</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktPn">(</span><span class="RktSym"><a class="RktStxLink" data-pltdoc="x" href="http://docs.racket-lang.org/reference/define.html#%28form._%28%28lib._racket%2Fprivate%2Fbase..rkt%29._define%29%29">define</a></span><span class="RktMeta"></span><span class="hspace"> </span><span class="RktMeta"></span><span class="RktPn">(</span><span class="RktSym">2filter</span><span class="RktMeta"></span><span class="hspace"> </span><span class="RktMeta"></span><span class="RktSym">pred</span><span class="RktMeta"></span><span class="hspace"> </span><span class="RktMeta"></span><span class="RktSym">lst</span><span class="RktPn">)</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"> </span><span class="RktVal">"Your</span><span class="hspace"> </span><span class="RktVal">code</span><span class="hspace"> </span><span class="RktVal">comes</span><span class="hspace"> </span><span class="RktVal">here"</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"> </span><span class="RktPn">)</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Created</span><span class="hspace"> </span><span class="RktCmt">January</span><span class="hspace"> </span><span class="RktCmt">2018</span><span class="hspace"> </span><span class="RktCmt">by</span><span class="hspace"> </span><span class="RktCmt">Samuel</span><span class="hspace"> </span><span class="RktCmt">Kraus</span><span class="hspace"> </span><span class="RktCmt">and</span><span class="hspace"> </span><span class="RktCmt">Edward</span><span class="hspace"> </span><span class="RktCmt">Minnix</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Updated</span><span class="hspace"> </span><span class="RktCmt">January</span><span class="hspace"> </span><span class="RktCmt">2020</span><span class="hspace"> </span><span class="RktCmt">by</span><span class="hspace"> </span><span class="RktCmt">Jared</span><span class="hspace"> </span><span class="RktCmt">Pincus</span><span class="RktMeta"></span></span></li><li><span style="font-family:'Droid Sans Mono',monospace;font-size:125%"><span class="RktMeta"></span><span class="RktCmt">;;</span><span class="hspace"> </span><span class="RktCmt">Modified</span><span class="hspace"> </span><span class="RktCmt">Januare</span><span class="hspace"> </span><span class="RktCmt">2022</span><span class="hspace"> </span><span class="RktCmt">by</span><span class="hspace"> </span><span class="RktCmt">Jacek</span><span class="hspace"> </span><span class="RktCmt">Ossowski</span><span class="RktMeta"></span></span></li></ol><p>=></p><div><pre></pre></div></div>
#lang
scheme
;;-------------------------------------------------------------------------------
;;
Name:
;;
Pledge:
;;-------------------------------------------------------------------------------
;;
This
lab
serves
as
an
introduction
to
using
recursion
in
Scheme.
;;
You
should
implement
every
function
in
this
program
recursively.
;;
;;
NOTE:
the
empty
list
is
a
valid
input
for
each
function!
;;
;;
Also,
just
because
your
code
works
for
provided
test
cases
;;
doesn't
mean
it
always
works.
;;
Always
come
up
with
your
own
test
cases
too!
;;
Implement
your
version
of
multiplication
denoted
by
the
symbol
@.
@
should
take
as
arguments
;;
an
integer
a
and
a
non-negative
integer
b.
The
return
value
of
@
should
be
a*b.
HOWEVER,
the
only
;;
arithmetic
operation
you're
allowed
to
use
is
+.
;;
Examples:
;;
(@
7
3)
->
21
;;
(@
8
0)
->
0
;;
(@
-3
4)
->
12
;;
(@
0
4)
->
0
;;
(@
-5
1)
->
-5
;;
Type
signature:
(@integer
integer)
->
integer
(
define
(
@
a
b
)
"Your
code
comes
here"
)
;;
Implement
the
"power"
function
which
takes
as
its
arguments
a
positive
integer
x
and
a
non-negative
;;
integer
n.
"power"
shoud
return
x
raised
to
the
power
of
n.
HOWEVER,
the
only
;;
arithmetic
operation
you're
allowed
to
use
is
*.
;;
Examples:
;;
(power
3
2)
->
9
;;
(power
2
10)
->
1024
;;
(power
3
1)
->
3
;;
(power
7
0)
->
1
;;
Type
signature:
(power
integer
integer)
->
integer
(
define
(
power
x
n
)
"Your
code
comes
here"
)
;;
Implement
"nth",
which
returns
the
element
at
index
n
of
the
provided
list.
;;
The
first
element
of
the
list
is
at
index
0,
the
second
at
index
1,
etc.
;;
You
may
assume
that
the
"n"
provided
is
non-negative
and
less
than
the
list's
length.
;;
Examples:
;;
(nth
1
'(Sandeep
Owen
Jared
Sarvani))
->
Owen
;;
(nth
5
'("zero"
"one"
"two"
"three"
"four"
"five"))
->
"five"
;;
(nth
0
'(a
b
c))
->
'a
;;
Type
signature:
(nth
integer
list)
->
element
from
list
(
define
(
nth
n
lst
)
"Your
code
comes
here"
)
;;
Implement
"sum
of
squares",
which
returns
the
summation
of
squares
of
all
the
elements
in
;;
the
given
list.
You
may
assume
that
the
list
will
only
contain
numbers.
;;
Note:
mathematical
convention
is
that
the
sum
of
squares
of
nothing
is
0.
;;
Examples:
;;
(sum2
'(1
3
5
1))
->
36
;;
(sum2
'(75050
344
0
-70
125))
->
5632641361
;;
Type
signature:
(sum2
number-list)
->
number
(
define
(
sum2
lst
)
"Your
code
comes
here"
)
;;
Implement
"product",
which
returns
the
result
of
multiplying
all
elements
in
the
list.
;;
You
may
assume
that
the
list
will
only
contain
numbers.
;;
Note:
mathematical
convention
is
that
the
product
of
nothing
is
1.
;;
Examples:
;;
(product
(list
1
3
5
4))
->
60
;;
(product
'(100
-50
6789
4183457))
->
-142007447865000
;;
Type
signature:
(product
number-list)
->
number
(
define
(
product
lst
)
"Your
code
comes
here"
)
;;
Implement
the
following
continued
fraction
function
denoted
as
"cf"
and
defined
as
follows.
;;
"cf"
takes
as
its
only
argument
a
list
of
positive
integers.
If
the
list
has
length
1,
then
the
;;
only
element
of
the
list
is
returned
as
the
function's
value.
Otherwise,
the
function
returns
the
;;
fraction
built
according
to
the
pattern
below
;;
(cf
'(a))
->
a
;;
;;
(cf
'(a
b))
->
1
;;
a
+
---
;;
b
;;
;;
(cf
'(a
b
c))
->
1
;;
a
+
------------
;;
1
;;
b
+
---
;;
c
;;
;;
(cf
'(a
b
c
d))
->
1
;;
a
+
----------------
;;
1
;;
b
+
---------
;;
c
+
1
;;
---
;;
d
;;
;;
and
so
on.
;;
;;
Examples:
;;
Approximation
for
Pi
;;
(exact->inexact
(cf
'(3
7
15
1
292
1)))
->
3.141592653921421
;;
Approximation
for
square
root
of
2
;;
(exact->inexact
(cf
'(1
2
2
2
2
2
2
2
2
2
2
2
2
2
2)))
->
1.4142135623637995
;;
Approximation
for
golden
ratio
;;
(exact->inexact
(cf
'(1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1)))
->
1.618034447821682
;;
;;
Type
signature
(cf
number-list)
->
fraction
(
define
(
cf
number-list
)
"Your
code
comes
here"
)
;;
Implement
"2filter",
which
accepts
a
predicate
(a
function
that
returns
a
boolean)
and
a
list,
;;
and
returns
the
same
list
except
that
for
every
element
satisfing
the
predicate
a
new
copy
of
;;
that
element
is
added.
The
new
copy
should
be
added
beside
the
element
which
makes
the
predicate
;;
return
#t.
;;
Examples
;;
(2filter
zero?
'(1
0
2
34
56
1
0))
->
'(1
0
0
2
34
56
1
0
0)
;;
(2filter
even?
'(0
1
2
3
4
5
6
7
8
9))
->
'(0
0
1
2
2
3
4
4
5
6
6
7
8
8
9)
;;
(2filter
number?
'(shave
and
1
haircut
2
bits))
->
'(shave
and
1
1
haircut
2
2
bits)
;;
(2filter
(lambda
(x)
(>
x
10))
'(1
0
2
34
56
1
0)
)
->
(1
0
2
34
34
56
56
1
0)
;;
Type
signature:
(2filter
predicate
list)
->
list
(
define
(
2filter
pred
lst
)
"Your
code
comes
here"
)
;;
Created
January
2018
by
Samuel
Kraus
and
Edward
Minnix
;;
Updated
January
2020
by
Jared
Pincus
;;
Modified
Januare
2022
by
Jacek
Ossowski
=>