<snapdata remixID="13215542"><project name="U5L1p1-GuessNumber_solutions_all sprites have code" app="Snap! 9.0, https://snap.berkeley.edu" version="2"><notes></notes><thumbnail>data:image/png;base64,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</thumbnail><scenes select="1"><scene name="U5L1p1-GuessNumber_solutions_all sprites have code"><notes></notes><hidden></hidden><headers></headers><code></code><blocks><block-definition s="number guessing game" type="command" category="looks"><header></header><code></code><translations></translations><inputs></inputs><script><block s="clear"></block><block s="gotoXY"><l>-200</l><l>-100</l></block><custom-block s="label %txt of size %n"><l>I&apos;m thinking of a number from 1 to 60.</l><l>16</l></custom-block><block s="gotoXY"><l>20</l><l>0</l></block><block s="doDeclareVariables"><list><l>secret number</l><l>number of guesses</l><l>sprite response</l></list></block><block s="doSetVar"><l>secret number</l><block s="reportRandom"><l>1</l><l>60</l></block></block><block s="doSetVar"><l>number of guesses</l><l>0</l></block><block s="doDeleteFromList"><l><option>all</option></l><block var="guesses"/></block><block s="doUntil"><block s="reportVariadicEquals"><list><block s="getLastAnswer"></block><block var="secret number"/></list></block><script><block s="doAsk"><l>Guess my secret number.</l></block><block s="doSetVar"><l>number of guesses</l><block s="reportVariadicSum"><list><block var="number of guesses"/><l>1</l></list></block></block><block s="doSetVar"><l>sprite response</l><custom-block s="high or low answer: %n secret number: %n"><block s="getLastAnswer"></block><block var="secret number"/></custom-block></block><block s="doAddToList"><block var="sprite response"/><block var="guesses"/></block><block s="doSayFor"><block var="sprite response"/><l>2</l></block></script></block><block s="doSayFor"><block s="reportJoinWords"><list><l>You guessed it in </l><block var="number of guesses"/><l> guesses.</l></list></block><l>3</l></block></script></block-definition><block-definition s="high or low answer: %&apos;answer&apos; secret number: %&apos;secret number&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%n"></input><input type="%n"></input></inputs><script><block s="doIf"><block s="reportVariadicEquals"><list><block var="answer"/><block var="secret number"/></list></block><script><block s="doReport"><custom-block s="join words %mult%txt"><list><block var="answer"/><l>is correct!</l></list></custom-block></block></script><list></list></block><block s="doIfElse"><block s="reportVariadicLessThan"><list><block var="answer"/><block var="secret number"/></list></block><script><block s="doReport"><custom-block s="join words %mult%txt"><list><block var="answer"/><l>is too low.</l></list></custom-block></block></script><script><block s="doReport"><custom-block s="join words %mult%txt"><list><block var="answer"/><l>is too high.</l></list></custom-block></block></script></block></script></block-definition><block-definition s="tell %&apos;sprite&apos; to %&apos;action&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%s">Sprite</input><input type="%cs"></input></inputs><script><block s="doRun"><block s="reportAttributeOf"><block var="action"/><block var="sprite"/></block><list></list></block></script></block-definition><block-definition s="label %&apos;text&apos; of size %&apos;size&apos;" type="command" category="pen"><comment x="0" y="0" w="90" collapsed="false">LABEL will stamp text on the stage at the given font size. The direction of the text is the direction the sprite is facing, and color will match the pen color.</comment><header></header><code></code><translations>de:drucke _ in Größe _&#xD;ca:etiqueta _ de mida _&#xD;es:etiqueta _ de tamaño _&#xD;fr:étiquette _ d&apos;une taille de _&#xD;</translations><inputs><input type="%txt">Hello!</input><input type="%n">12</input></inputs><script><block s="doRun"><block s="reportJSFunction"><list><l>text</l><l>size</l><l>process</l></list><l>var stage = this.parentThatIsA(StageMorph);&#xD;&#xD;if (this == stage) {&#xD;    throw new Error(&#xD;     &apos;LABEL cannot be used from the stage because the stage does not have a postion.\n&apos;&#xD;     + &apos;Use LABEL from a sprite to draw text.&apos;);&#xD;}&#xD;&#xD;if (typeof text !== &apos;string&apos; &amp;&amp; typeof text !== &apos;number&apos;) {&#xD;    throw new Error(&apos;LABEL can only draw text or numbers, not a &apos; + process.reportTypeOf(text)); &#xD;}&#xD;&#xD;var context = stage.penTrails().getContext(&apos;2d&apos;),&#xD;    rotation = radians(this.direction() - 90),&#xD;    trans = new Point(&#xD;      this.center().x - stage.left(),&#xD;      this.center().y - stage.top()&#xD;    ),&#xD;    isWarped = this.Warped,&#xD;    len,&#xD;    pos;&#xD;&#xD;if (isWarped) {endWarp(); }&#xD;context.save();&#xD;context.font = size + &apos;px monospace&apos;;&#xD;context.textAlign = &apos;left&apos;;&#xD;context.textBaseline = &apos;alphabetic&apos;;&#xD;context.fillStyle = this.color.toString();&#xD;len = context.measureText(text).width;&#xD;trans = trans.multiplyBy(1 / stage.scale);&#xD;context.translate(trans.x, trans.y);&#xD;context.rotate(rotation);&#xD;context.fillText(text, 0, 0);&#xD;context.translate(-trans.x, -trans.y);&#xD;context.restore();&#xD;pos = new Point(&#xD;  len * Math.sin(radians(this.direction())),&#xD;  len * Math.cos(radians(this.direction())));&#xD;pos = pos.add(new Point(this.xPosition(), this.yPosition()));&#xD;this.gotoXY(pos.x, pos.y, false);&#xD;this.changed();&#xD;if (isWarped) {this.startWarp(); }&#xD;stage.changed();&#xD;</l></block><list><block var="text"/><block var="size"/></list></block></script></block-definition><block-definition s="empty? %&apos;data&apos;" type="predicate" category="lists"><header></header><code></code><translations>de:ist _ leer?&#xD;ca:_ buida?&#xD;es:_ vacía?&#xD;fr:_ vide?&#xD;</translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="reportVariadicEquals"><list><block var="data"/><block s="reportNewList"><list></list></block></list></block></block></script></block-definition><block-definition s="keep items such that %&apos;pred&apos; from %&apos;data&apos;" type="reporter" category="lists"><header></header><code></code><translations>de:behalte Elemente, die _ aus _&#xD;ca:manté els elements on _ de _&#xD;es:mantener los elementos donde _ de _&#xD;fr:garder les items tels que _ de _&#xD;</translations><inputs><input type="%predRing"></input><input type="%l"></input></inputs><script><block s="doIf"><custom-block s="empty? %l"><block var="data"/></custom-block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script><list></list></block><block s="doIfElse"><block s="evaluate"><block var="pred"/><list><block s="reportListItem"><l>1</l><block var="data"/></block></list></block><script><block s="doReport"><block s="reportCONS"><block s="reportListItem"><l>1</l><block var="data"/></block><custom-block s="keep items such that %predRing from %l"><block var="pred"/><block s="reportCDR"><block var="data"/></block></custom-block></block></block></script><script><block s="doReport"><custom-block s="keep items such that %predRing from %l"><block var="pred"/><block s="reportCDR"><block var="data"/></block></custom-block></block></script></block></script></block-definition><block-definition s="combine with %&apos;function&apos; items of %&apos;data&apos;" type="reporter" category="lists"><header></header><code></code><translations>de:kombiniere mit _ die Elemente von _&#xD;ca:combina amb _ els elements de _&#xD;es:combinar con _ los elementos de _&#xD;fr:combine avec _ les items de _&#xD;</translations><inputs><input type="%repRing"></input><input type="%l"></input></inputs><script><block s="doIf"><custom-block s="empty? %l"><block s="reportCDR"><block var="data"/></block></custom-block><script><block s="doReport"><block s="reportListItem"><l>1</l><block var="data"/></block></block></script><list></list></block><block s="doReport"><block s="evaluate"><block var="function"/><list><block s="reportListItem"><l>1</l><block var="data"/></block><custom-block s="combine with %repRing items of %l"><block var="function"/><block s="reportCDR"><block var="data"/></block></custom-block></list></block></block></script></block-definition><block-definition s="if %&apos;test&apos; then %&apos;true&apos; else %&apos;false&apos;" type="reporter" category="control"><header></header><code></code><translations>de:wenn _ dann _ sonst _&#xD;ca:si _ llavors _ si no _&#xD;es:si _ entonces _ sino _&#xD;fr:si _ alors _ sinon _&#xD;</translations><inputs><input type="%b"></input><input type="%anyUE"></input><input type="%anyUE"></input></inputs><script><block s="doIfElse"><block var="test"/><script><block s="doReport"><block s="evaluate"><block var="true"/><list></list></block></block></script><script><block s="doReport"><block s="evaluate"><block var="false"/><list></list></block></block></script></block></script></block-definition><block-definition s="for %&apos;i&apos; = %&apos;start&apos; to %&apos;end&apos; %&apos;action&apos;" type="command" category="control"><header></header><code></code><translations>de:für _ = _ bis _ _&#xD;ca:per _ = _ fins _ _&#xD;es:para _ = _ hasta _ _&#xD;fr:pour _ allant de _ à _ _&#xD;</translations><inputs><input type="%upvar"></input><input type="%n">1</input><input type="%n">10</input><input type="%cs"></input></inputs><script><block s="doDeclareVariables"><list><l>step</l><l>tester</l></list></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block var="start"/><block var="end"/></list></block><script><block s="doSetVar"><l>step</l><l>-1</l></block><block s="doSetVar"><l>tester</l><block s="reifyReporter"><autolambda><block s="reportVariadicLessThan"><list><block var="i"/><block var="end"/></list></block></autolambda><list></list></block></block></script><script><block s="doSetVar"><l>step</l><l>1</l></block><block s="doSetVar"><l>tester</l><block s="reifyReporter"><autolambda><block s="reportVariadicGreaterThan"><list><block var="i"/><block var="end"/></list></block></autolambda><list></list></block></block></script></block><block s="doSetVar"><l>i</l><block var="start"/></block><block s="doUntil"><block s="evaluate"><block var="tester"/><list></list></block><script><block s="doRun"><block var="action"/><list></list></block><block s="doChangeVar"><l>i</l><block var="step"/></block></script></block></script></block-definition><block-definition s="join words %&apos;words&apos;" type="reporter" category="operators"><header></header><code></code><translations>de:füge Wörter zusammen _&#xD;ca:uneix les paraules _&#xD;es:unir las palabras _&#xD;fr:fusionne les mots _&#xD;</translations><inputs><input type="%mult%txt"></input></inputs><script><block s="doIf"><custom-block s="empty? %l"><block s="reportCDR"><block var="words"/></block></custom-block><script><block s="doReport"><block s="reportListItem"><l>1</l><block var="words"/></block></block></script><list></list></block><block s="doIf"><block s="reportVariadicEquals"><list><l></l><block s="reportListItem"><l>1</l><block var="words"/></block></list></block><script><block s="doReport"><custom-block s="join words %mult%txt"><block s="reportCDR"><block var="words"/></block></custom-block></block></script><list></list></block><block s="doIf"><block s="reportVariadicEquals"><list><l></l><block s="reportListItem"><l>2</l><block var="words"/></block></list></block><script><block s="doReport"><custom-block s="join words %mult%txt"><block s="reportCONS"><block s="reportListItem"><l>1</l><block var="words"/></block><block s="reportCDR"><block s="reportCDR"><block var="words"/></block></block></block></custom-block></block></script><list></list></block><block s="doReport"><block s="reportJoinWords"><list><block s="reportListItem"><l>1</l><block var="words"/></block><l> </l><custom-block s="join words %mult%txt"><block s="reportCDR"><block var="words"/></block></custom-block></list></block></block></script></block-definition><block-definition s="list $arrowRight sentence %&apos;data&apos;" type="reporter" category="operators"><header></header><code></code><translations>de:Liste $arrowRight Satz _&#xD;ca:llista $arrowRight frase _&#xD;es:lista $arrowRight frase _&#xD;fr:liste $arrowRight phrase _&#xD;</translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><custom-block s="join words %mult%txt"><block var="data"/></custom-block></block></script></block-definition><block-definition s="sentence $arrowRight list %&apos;text&apos;" type="reporter" category="operators"><header></header><code></code><translations>de:Satz $arrowRight Liste _&#xD;ca:frase $arrowRight llista _&#xD;es:frase $arrowRight lista _&#xD;fr:phrase $arrowRight liste _&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doReport"><block s="reportTextSplit"><block var="text"/><l><option>whitespace</option></l></block></block></script></block-definition><block-definition s="catch %&apos;tag&apos; %&apos;action&apos;" type="command" category="control"><header></header><code></code><translations>de:fange _ _&#xD;ca:agafa _ _&#xD;es:atrapar _ _&#xD;fr:attrape _ _&#xD;</translations><inputs><input type="%upvar"></input><input type="%cs"></input></inputs><script><block s="doCallCC"><block s="reifyScript"><script><block s="doSetVar"><l>tag</l><block var="cont"/></block><block s="doRun"><block var="action"/><list></list></block></script><list><l>cont</l></list></block></block><custom-block s="ignore %s"><l>3</l></custom-block></script></block-definition><block-definition s="throw %&apos;cont&apos;" type="command" category="control"><header></header><code></code><translations>de:wirf _&#xD;ca:llança _&#xD;es:lanzar _&#xD;fr:lance _&#xD;</translations><inputs><input type="%s">catchtag</input></inputs><script><block s="doRun"><block var="cont"/><list></list></block></script></block-definition><block-definition s="catch %&apos;tag&apos; %&apos;value&apos;" type="reporter" category="control"><header></header><code></code><translations>de:fange _ _&#xD;ca:agafa _ _&#xD;es:atrapar _ _&#xD;fr:attrape _ _&#xD;</translations><inputs><input type="%upvar"></input><input type="%anyUE"></input></inputs><script><block s="doCallCC"><block s="reifyScript"><script><block s="doSetVar"><l>tag</l><block var="cont"/></block><block s="doReport"><block s="evaluate"><block var="value"/><list></list></block></block></script><list><l>cont</l></list></block></block></script></block-definition><block-definition s="throw %&apos;tag&apos; %&apos;value&apos;" type="command" category="control"><header></header><code></code><translations>de:wirf _ _&#xD;ca:llança _ _&#xD;es:lanzar _ _&#xD;fr:lance _ _&#xD;</translations><inputs><input type="%s">catchtag</input><input type="%s"></input></inputs><script><block s="doRun"><block var="tag"/><list><block var="value"/></list></block></script></block-definition><block-definition s="for each %&apos;item&apos; of %&apos;data&apos; %&apos;action&apos;" type="command" category="lists"><header></header><code></code><translations>de:für jedes _ von _ _&#xD;ca:per cada _ de _ _&#xD;es:para cada _ de _ _&#xD;fr:pour chaque _ de _ _&#xD;</translations><inputs><input type="%upvar"></input><input type="%l"></input><input type="%cs"></input></inputs><script><block s="doUntil"><custom-block s="empty? %l"><block var="data"/></custom-block><script><block s="doSetVar"><l>item</l><block s="reportListItem"><l>1</l><block var="data"/></block></block><block s="doRun"><block var="action"/><list><block s="reportListItem"><l>1</l><block var="data"/></block></list></block><block s="doSetVar"><l>data</l><block s="reportCDR"><block var="data"/></block></block></script></block></script></block-definition><block-definition s="if %&apos;test&apos; do %&apos;action&apos; and pause all $pause-1-255-220-0" type="command" category="control"><header></header><code></code><translations>de:falls _ dann _ und pause $pause-1-255-220-0&#xD;ca:si _ fes _ i atura-ho tot $pause-1-255-220-0&#xD;es:si _ haz _ y páralo todo $pause-1-255-220-0&#xD;fr:si _ faire _ et mettre tout en pause $pause-1-255-220-0&#xD;</translations><inputs><input type="%boolUE"></input><input type="%cs"></input></inputs><script><block s="doDeclareVariables"><list><l>breakpoint</l></list></block><block s="doIf"><block s="evaluate"><block var="test"/><list></list></block><script><block s="doSetVar"><l>breakpoint</l><block var="test"/></block><block s="doShowVar"><l>breakpoint</l></block><block s="doRun"><block var="action"/><list></list></block><block s="doPauseAll"></block><block s="doHideVar"><l></l></block></script><list></list></block></script></block-definition><block-definition s="word $arrowRight list %&apos;word&apos;" type="reporter" category="operators"><header></header><code></code><translations>de:Wort $arrowRight Liste _&#xD;ca:paraula $arrowRight llista _&#xD;es:palabra $arrowRight lista _&#xD;fr:mot $arrowRight liste _&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doReport"><block s="reportTextSplit"><block var="word"/><l><option>letter</option></l></block></block></script></block-definition><block-definition s="ignore %&apos;x&apos;" type="command" category="control"><header></header><code></code><translations>de:ignoriere _&#xD;ca:ignora _&#xD;es:ignorar _&#xD;fr:ignore _&#xD;</translations><inputs><input type="%s"></input></inputs></block-definition><block-definition s="list $arrowRight word %&apos;list&apos;" type="reporter" category="operators"><header></header><code></code><translations>de:Liste $arrowRight Wort _&#xD;ca:llista $arrowRight paraula _&#xD;es:lista $arrowRight palabra _&#xD;fr:liste $arrowRight mot _&#xD;</translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="reportJoinWords"><block var="list"/></block></block></script></block-definition><block-definition s="%&apos;x&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doReport"><block var="x"/></block></script></block-definition><block-definition s="numbers from %&apos;from&apos; to %&apos;to&apos;" type="reporter" category="lists"><header></header><code></code><translations>de:Zahlen von _ bis _&#xD;ca:nombres des de _ a _&#xD;es:números de _ a _&#xD;fr:nombres de _ à _&#xD;</translations><inputs><input type="%n">1</input><input type="%n">10</input></inputs><script><block s="doIf"><block s="reportVariadicGreaterThan"><list><block var="from"/><block var="to"/></list></block><script><block s="doReport"><block s="reportNewList"><list></list></block></block></script><list></list></block><block s="doReport"><block s="reportCONS"><block var="from"/><custom-block s="numbers from %n to %n"><block s="reportVariadicSum"><list><block var="from"/><l>1</l></list></block><block var="to"/></custom-block></block></block></script></block-definition><block-definition s="map %&apos;func&apos; over %&apos;data&apos;" type="reporter" category="lists"><header></header><code></code><translations>de:wende _ an auf _&#xD;ca:mapeja _ sobre _&#xD;es:mapear _ sobre _&#xD;fr:appliquer _ à _&#xD;</translations><inputs><input type="%repRing"></input><input type="%l"></input></inputs><script><block s="doIf"><custom-block s="empty? %l"><block var="data"/></custom-block><script><block s="doReport"><block var="data"/></block></script><list></list></block><block s="doReport"><block s="reportCONS"><block s="evaluate"><block var="func"/><list><block s="reportListItem"><l>1</l><block var="data"/></block></list></block><custom-block s="map %repRing over %l"><block var="func"/><block s="reportCDR"><block var="data"/></block></custom-block></block></block></script></block-definition><block-definition s="guess average" type="command" category="sensing"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doChangeVar"><l>turns</l><l>1</l></block><block s="doSetVar"><l>guess</l><block s="reportMonadic"><l><option>floor</option></l><block s="reportQuotient"><block s="reportVariadicSum"><list><block var="smallest possible number"/><block var="largest possible number"/></list></block><l>2</l></block></block></block><block s="doTellTo"><l>Sprite</l><block s="reifyScript"><script><block s="bubble"><block s="reportJoinWords"><list><l>I guess </l><block var="guess"/></list></block></block></script><list></list></block><list></list></block></script><scripts><comment x="12" y="170.46666666666667" w="304" collapsed="false">There&apos;s a good chance that your students will do the SAY in whatever sprite is current, i.e., one of the buttons.  They may need to be reminded about TELL to have the correct sprite get the speech balloon.</comment></scripts></block-definition></blocks><stage name="Stage" width="480" height="360" costume="0" color="255,255,255,1" tempo="60" threadsafe="false" penlog="false" volume="100" pan="0" lines="round" ternary="true" hyperops="true" codify="false" inheritance="false" sublistIDs="false" id="647"><pentrails>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAAAXNSR0IArs4c6QAADoVJREFUeF7t1cEJAAAIxDDdf2m3sJ+4wEEQuuMIECBAgACBd4F9XzRIgAABAgQIjAB7AgIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECByxcQFpoRMBzwAAAABJRU5ErkJggg==</pentrails><costumes><list struct="atomic" id="648"></list></costumes><sounds><list struct="atomic" id="649"></list></sounds><variables></variables><blocks></blocks><scripts></scripts><sprites select="1"><sprite name="Sprite" idx="1" x="20" y="0" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="0" color="80,80,80,1" pen="tip" id="654"><costumes><list struct="atomic" id="655"></list></costumes><sounds><list struct="atomic" id="656"></list></sounds><blocks></blocks><variables></variables><scripts><comment x="13" y="10" w="317.3333333333333" collapsed="false">U5L1 page 1 FYTD 3-4:&#xD;&#xD;The algorithm is &quot;guess the midpoint of the available range.&quot;  To make this detailed enough for a computer program, the key point is to maintain two variables, &quot;smallest possible number&quot; and &quot;largest possible number,&quot; and to guess the average.&#xD;&#xD;1. Set &quot;smallest possible number&quot; to 1; set &quot;largest possible number&quot; to 60.&#xD;2. Guess ROUND or FLOOR or CEILING (it doesn&apos;t matter which) of (SMALLEST+LARGEST)/2.&#xD;3. If JUST RIGHT button clicked, announce win.&#xD;4. If TOO SMALL clicked, set SMALLEST to GUESS+1, then repeat step 2.&#xD;5. If TOO LARGE clicked, set LARGEST to GUESS-1, then repeat step 2.&#xD;&#xD;Since step 2 is run from three different sprites, it&apos;s best to define a procedure that does it: </comment><script x="16" y="271"><custom-block s="guess average"><comment w="144.66666666666666" collapsed="true">Look inside for step 2.</comment></custom-block></script><script x="16.666666666666657" y="302.3333333333333"><block s="receiveGo"><comment w="58" collapsed="true">5.1.1.6</comment></block><block s="doDeleteFromList"><l><option>all</option></l><block var="guesses"/></block><block s="doSetVar"><l>smallest possible number</l><l>1</l><comment w="53.333333333333336" collapsed="true">Step 1.</comment></block><block s="doSetVar"><l>largest possible number</l><l>60</l></block><block s="doSetVar"><l>turns</l><l>0</l><comment w="243.33333333333334" collapsed="true">Count how many turns the program needs.</comment></block><block s="doSayFor"><l>Think of a number from 1 to 60.</l><l>2</l></block><block s="doSayFor"><l>I&apos;ll guess it.</l><l>2</l></block><block s="doSayFor"><l>Don&apos;t forget your number!</l><l>2</l></block><custom-block s="guess average"></custom-block></script><comment x="14" y="524.6666666666667" w="306" collapsed="false">Steps 3-5 are in the other sprites.&#xD;&#xD;Students may feel they ought to have more code here, but there&apos;s no need, because what happens next is that the user clicks one of the three buttons, and their when-clicked scripts carry out the next steps of the algorithm.</comment></scripts></sprite><sprite name="Too small" idx="2" x="-121.36491266256803" y="-106.02258257604643" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="1" color="26.41799999999994,0,188.7,1" pen="tip" id="684"><costumes><list id="685"><item><ref mediaID="Too small_cst_toosmall"></ref></item></list></costumes><sounds><list struct="atomic" id="686"></list></sounds><blocks></blocks><variables></variables><scripts><script x="49.59999999999999" y="55.333333333333336"><block s="receiveInteraction"><l><option>clicked</option></l></block><block s="doSetVar"><l>smallest possible number</l><block s="reportVariadicSum"><list><block var="guess"/><l>1</l></list><comment w="53.333333333333336" collapsed="true">Step 4.</comment></block></block><block s="doAddToList"><custom-block s="join words %mult%txt"><list><block var="guess"/><l> is too small.</l></list></custom-block><block var="guesses"/></block><custom-block s="guess average"></custom-block></script><comment x="46" y="171.33333333333334" w="306.6666666666667" collapsed="false">It&apos;s not the main point of the lab, but don&apos;t pass this by without a comment on how elegant the abstraction is.  After the initial setup, there&apos;s hardly any code in this program!</comment></scripts></sprite><sprite name="Just right" idx="3" x="9.635087337432651" y="-103.02258257604637" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="1" color="59.67000000000005,229.5,0,1" pen="tip" id="709"><costumes><list id="710"><item><ref mediaID="Just right_cst_justright"></ref></item></list></costumes><sounds><list struct="atomic" id="711"></list></sounds><blocks></blocks><variables></variables><scripts><script x="16.999999999999773" y="26.333333333333258"><block s="receiveInteraction"><l><option>clicked</option></l></block><block s="doAddToList"><custom-block s="join words %mult%txt"><list><block var="guess"/><l>is correct!</l></list></custom-block><block var="guesses"/></block><block s="doTellTo"><l>Sprite</l><block s="reifyScript"><script><block s="bubble"><custom-block s="join words %mult%txt"><list><l>I win in</l><block var="turns"/><l>turns!</l></list></custom-block></block></script><list></list></block><list></list><comment w="57.333333333333336" collapsed="true">Step 3.</comment></block></script></scripts></sprite><sprite name="Too big" idx="4" x="137.63508733743265" y="-103.02258257604637" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="1" color="133.72199999999998,0,145.35,1" pen="tip" id="743"><costumes><list id="744"><item><ref mediaID="Too big_cst_toobih"></ref></item></list></costumes><sounds><list struct="atomic" id="745"></list></sounds><blocks></blocks><variables></variables><scripts><script x="12.666666666666666" y="38"><block s="receiveInteraction"><l><option>clicked</option></l></block><block s="doSetVar"><l>largest possible number</l><block s="reportDifference"><block var="guess"/><l>1</l><comment w="53.333333333333336" collapsed="true">Step 5.</comment></block></block><block s="doAddToList"><custom-block s="join words %mult%txt"><list><block var="guess"/><l> is too big.</l></list></custom-block><block var="guesses"/></block><custom-block s="guess average"></custom-block></script></scripts></sprite><watcher scope="Stage" s="getLastAnswer" style="normal" x="17" y="13" color="4,148,220" hidden="true"/><watcher var="smallest possible number" style="normal" x="10" y="10" color="243,118,29" hidden="true"/><watcher var="largest possible number" style="normal" x="10" y="40.000001999999995" color="243,118,29" hidden="true"/><watcher var="guess" style="normal" x="10" y="70.00000399999999" color="243,118,29" hidden="true"/><watcher var="turns" style="normal" x="10" y="100.00000599999998" color="243,118,29" hidden="true"/><watcher var="guesses" style="normal" x="5" y="5.500001999999995" color="243,118,29" extX="174" extY="185"/></sprites></stage><variables><variable name="guesses"><list struct="atomic" id="773"></list></variable><variable name="smallest possible number"><l>1</l></variable><variable name="largest possible number"><l>60</l></variable><variable name="guess"><l>30</l></variable><variable name="turns"><l>1</l></variable></variables></scene></scenes></project><media name="U5L1p1-GuessNumber_solutions_all sprites have code" app="Snap! 9.0, https://snap.berkeley.edu" version="2"><costume name="toosmall" center-x="58.5" center-y="51.5" image="data:image/png;base64,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" mediaID="Too small_cst_toosmall"/><costume name="justright" center-x="58.5" center-y="51.5" image="data:image/png;base64,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" mediaID="Just right_cst_justright"/><costume name="toobih" center-x="58.5" center-y="51.5" image="data:image/png;base64,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" mediaID="Too big_cst_toobih"/></media></snapdata>