<snapdata remixID="9404996"><project name="Lab 4.3 " app="Snap! 5.4, http://snap.berkeley.edu" version="1"><notes></notes><thumbnail>data:image/png;base64,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</thumbnail><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="false" codify="false" inheritance="true" sublistIDs="false" scheduled="false" id="1"><pentrails>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAY7UlEQVR4Xu3dT4hl2V3A8XNebbqrw0REMKAEBCEOCNmILhQyi2ESsug/WRgIihIJzIQwGUEyKAgDUSEScDKEzMDggCAGI6T/LCQ2s5iFC90pBJIByUIiJOBCkO5e9TtyinuLm2tV/epV/dKnu+uTZeq8c977vNPv+859b3i1+B8BAgQIECDwyAXqI1/RggQIECBAgEARYJuAAAECBAgMEBDgAeiWJECAAAECAmwPECBAgACBAQICPADdkgQIECBAQIDtAQIECBAgMEBAgAegW5IAAQIECAiwPUCAAAECBAYICPAAdEsSIECAAAEBtgcIECBAgMAAAQEegG5JAgQIECAgwPYAAQIECBAYICDAA9AtSYAAAQIEBNgeIECAAAECAwQEeAC6JQkQIECAgADbAwQIECBAYICAAA9AtyQBAgQIEBBge4AAAQIECAwQEOAB6JYkQIAAAQICbA8QIECAAIEBAgI8AN2SBAgQIEBAgO0BAgQIECAwQECAB6BbkgABAgQICLA9QIAAAQIEBggI8AB0SxIgQIAAAQG2BwgQIECAwAABAR6AbkkCBAgQICDA9gABAgQIEBggIMAD0C1JgAABAgQE2B4gQIAAAQIDBAR4ALolCRAgQICAANsDBAgQIEBggIAAD0C3JAECBAgQEGB7gAABAgQIDBAQ4AHoliRAgAABAgJsDxAgQIAAgQECAjwA3ZIECBAgQECA7QECBAgQIDBAQIAHoFuSAAECBAgIsD1AgAABAgQGCAjwAHRLEiBAgAABAbYHCBAgQIDAAAEBHoBuSQIECBAgIMD2AAECBAgQGCAgwAPQLUmAAAECBATYHiBAgAABAgMEBHgAuiUJECBAgIAA2wMECBAgQGCAgAAPQLckAQIECBAQYHuAAAECBAgMEBDgAeiWJECAAAECAmwPECBAgACBAQICPADdkgQIECBAQIDtAQIECBAgMEBAgAegW5IAAQIECAiwPUCAAAECBAYICPAAdEsSIECAAAEBtgcIECBAgMAAAQEegG5JAgQIECAgwPYAAQIECBAYICDAA9AtSYAAAQIEBNgeIECAAAECAwQEeAC6JQkQIECAgADbAwQIECBAYICAAA9AtyQBAgQIEBBge4AAAQIECAwQEOAB6JYkQIAAAQICbA8QIECAAIEBAgI8AN2SBAgQIEBAgO0BAgQIECAwQECAB6BbkgABAgQICLA9QIAAAQIEBggI8AB0SxIgQIAAAQG2BwgQIECAwAABAR6AbkkCBAgQICDA9gABAgQIEBggIMAD0C1JgAABAgQE2B4gQIAAAQIDBAR4ALolCRAgQICAANsDBAgQIEBggIAAD0C3JAECBAgQEGB7gAABAgQIDBAQ4AHoliRAgAABAgJsDxAgQIAAgQECAjwA3ZIECBAgQECA7QECBAgQIDBAQIAHoFuSAAECBAgIsD1AgAABAgQGCAjwAHRLEiBAgAABAbYHCBAgQIDAAAEBHoBuSQIECBAgIMD2AAECBAgQGCAgwAPQLUmAAAECBATYHiBAgAABAgMEBHgAuiUJECBAgIAA2wMECBAgQGCAgAAPQLckAQIECBAQYHuAAAECBAgMEBDgAeiWJECAAAECAmwPECBAgACBAQICPADdkgQIECBAQIDtAQIECBAgMEBAgAegW5IAAQIECAiwPUCAAAECBAYICPAAdEsSIECAAAEBtgcIECBAgMAAAQEegG5JAgQIECAgwPYAAQIECBAYICDAA9AtSYAAAQIEBNgeIECAAAECAwQEeAC6JQkQIECAgADbAwQIECBAYICAAA9AtyQBAgQIEBBge4AAAQIECAwQEOAB6JYkQIAAAQICbA8QIECAAIEBAgI8AN2SBAgQIEBAgO0BAgQIECAwQECAB6BbkgABAgQICLA9QIAAAQIEBggI8AB0SxIgQIAAAQG2BwgQIECAwAABAR6AbkkCBAgQICDA9gABAgQIEBggIMAD0C1JgAABAgQE2B4gQIAAAQIDBAR4ALolCRAgQICAANsDBAgQIEBggIAAD0C3JAECBAgQEGB7gAABAgQIDBAQ4AHoliRAgAABAgJsD+wscO3atY/XWr8z37C19onbt2//084TnfMGV69e/fla63u11l8ppfx3rfX5mzdv/vtR085jSynv3b59+6U+5tq1a2+WUm6d5b73+TabzTvb7fazd+7c+fE5H8qQm9+4cePl1trX1s/fwvUH9+/f/+1Lly59YOE839cTvYc8IIsSeMIEBPgJe8JG390bN258tLX2je12+6nR4ekB6R43b958I3KZgvntUsr/zNG8yAGen8fu0Vp7Y/kmpLvUWj/YTe/fv/+5u3fv3lv6Pg1v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</pentrails><costumes><list struct="atomic" id="2"></list></costumes><sounds><list struct="atomic" id="3"></list></sounds><variables></variables><blocks></blocks><scripts></scripts><sprites><sprite name="Sprite" idx="1" x="-100" y="0" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" hidden="true" costume="0" color="80,80,80,1" pen="tip" id="8"><costumes><list struct="atomic" id="9"></list></costumes><sounds><list struct="atomic" id="10"></list></sounds><blocks></blocks><variables></variables><scripts><script x="434.84974058333387" y="623.9118130236204"><custom-block s="list $arrowRight sentence %l"><custom-block s="only evens %l"><block var="numbers"/></custom-block></custom-block></script><script x="87.17585301837369" y="10"><block s="receiveGo"></block><block s="clear"></block><block s="hide"></block><block s="up"></block><block s="gotoXY"><l>-100</l><l>40</l></block><block s="doSetVar"><l>numbers</l><block s="reportNewList"><list><l>89</l><l>67</l><l>5</l><l>90</l><l>-2</l><l>0</l><l>190</l><l>8</l></list></block></block><block s="write"><block s="reportJoinWords"><list><l>Sum of Numbers : </l><custom-block s="Sum of %l"><block var="numbers"/></custom-block></list></block><l>12</l></block><block s="gotoXY"><l>-100</l><l>20</l></block><block s="write"><block s="reportJoinWords"><list><l>Average of Numbers : </l><custom-block s="Average of %l"><block var="numbers"/></custom-block></list></block><l>12</l></block><block s="gotoXY"><l>-100</l><l>0</l></block><block s="write"><block s="reportJoinWords"><list><l>Includes negatives?</l><custom-block s="includes negative? %l"><block var="numbers"/></custom-block></list></block><l>12</l></block><block s="gotoXY"><l>-100</l><l>-20</l></block><block s="write"><block s="reportJoinWords"><list><l>Is increasing?</l><custom-block s="is increasing? %l"><block var="numbers"/></custom-block></list></block><l>12</l></block><block s="gotoXY"><l>-100</l><l>-40</l></block><block s="write"><block s="reportJoinWords"><list><l>Maximum of </l><custom-block s="Maximum of %l"><block var="numbers"/></custom-block></list></block><l>12</l></block><block s="gotoXY"><l>-100</l><l>-60</l></block><block s="write"><block s="reportJoinWords"><list><l>Make all positive</l><custom-block s="make all positive %l"><block var="numbers"/></custom-block></list></block><l>12</l><comment w="530" collapsed="false">You will have to write further code here to make the returned list elements display in a more readable way.[Hint: loop and a variable to join all the list elements, or list-&gt;sentence from words, sentences library].[Optional]</comment></block><block s="gotoXY"><l>-100</l><l>-80</l></block><block s="write"><block s="reportJoinWords"><list><l>Only evens</l><custom-block s="only evens %l"><block var="numbers"/></custom-block></list></block><l>12</l><comment w="433.2" collapsed="false">You will have to write further code here to make the returned list elements display in a more readable way.[Hint: loop and a variable to join all the list elements, or list-&gt;sentence from words, sentences library].[Optional].</comment></block></script><script x="93.33333333333417" y="517.9118130236209"><custom-block s="Sum of %l"><block var="numbers"/></custom-block></script><script x="231.3333333333345" y="512.6666666666654"><custom-block s="Average of %l"><block var="numbers"/></custom-block></script><script x="96.33333333333417" y="565.9999999999991"><custom-block s="includes negative? %l"><block var="numbers"/></custom-block></script><script x="76.33333333333417" y="606.9999999999986"><custom-block s="is increasing? %l"><block var="numbers"/></custom-block></script><script x="319.33333333333485" y="569.999999999999"><custom-block s="Maximum of %l"><block var="numbers"/></custom-block></script></scripts></sprite><watcher var="numbers" style="normal" x="10" y="10" color="243,118,29" extX="80" extY="70"/></sprites></stage><hidden></hidden><headers></headers><code></code><blocks><block-definition s="Sum of %&apos;List of numbers&apos;" type="reporter" category="lists"><comment w="90" collapsed="false">add code here to report the sum of all the numbers in the list.</comment><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><l>447</l></block></script></block-definition><block-definition s="Average of %&apos;List of Numbers&apos;" type="reporter" category="lists"><comment w="90" collapsed="false">add code to report the average of all the numbers in the list.</comment><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><l>63.9</l></block></script></block-definition><block-definition s="includes negative? %&apos;List of Numbers&apos;" type="predicate" category="lists"><comment w="90" collapsed="false">add to report true if the list contains at least one negative number, and false if all numbers are non-negative.</comment><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doIfElse"><block s="reportListContainsItem"><block var="numbers"/><block s="reportListItem"><block s="reportLessThan"><block var="i"/><l>0</l></block><block var="numbers"/></block></block><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script><script><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block></script></block-definition><block-definition s="is increasing? %&apos;List of Numbers&apos;" type="predicate" category="lists"><comment w="90" collapsed="false">add code to report true if each value in the list is greater than or equal to the one before it..</comment><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block-definition><block-definition s="Maximum of %&apos;List of Numbers&apos;" type="reporter" category="lists"><comment w="90" collapsed="false">add code to report the largest number in the list..</comment><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><l>190</l></block></script></block-definition><block-definition s="make all positive %&apos;List of Numbers&apos;" type="reporter" category="lists"><comment x="0" y="0" w="90" collapsed="false">add code to report a new LIST that is the same as the argument, except all negative numbers have been replaced by their absolute value. .</comment><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><l>Not implemented</l></block></script></block-definition><block-definition s="only evens %&apos;List of Numbers&apos;" type="reporter" category="lists"><comment x="0" y="0" w="90" collapsed="false">add code to report a new LIST that contains only the even numbers from the argument list..</comment><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block var="List of Numbers"/></block></script></block-definition><block-definition s="all but first letter of %&apos;string&apos;" type="reporter" category="operators"><comment x="0" y="0" w="199" collapsed="false">Takes a text string as input, and reports a new text string containing all but the first character of the input.</comment><header></header><code></code><translations>pt:_ sem o primeiro caractere&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doDeclareVariables"><list><l>result</l><l>i</l></list></block><block s="doWarp"><script><block s="doIf"><block s="reportEquals"><block s="reportStringSize"><block var="string"/></block><l>0</l></block><script><block s="doReport"><block s="reportListItem"><l>1</l><block s="reportSum"><l>0</l><l>0</l></block></block></block></script></block><block s="doSetVar"><l>result</l><l></l></block><block s="doSetVar"><l>i</l><l>2</l></block><block s="doUntil"><block s="reportGreaterThan"><block var="i"/><block s="reportStringSize"><block var="string"/></block></block><script><block s="doSetVar"><l>result</l><block s="reportJoinWords"><list><block var="result"/><block s="reportLetter"><block var="i"/><block var="string"/></block></list></block></block><block s="doChangeVar"><l>i</l><l>1</l></block></script></block><block s="doReport"><block var="result"/></block></script></block></script></block-definition><block-definition s="all but first word of %&apos;sentence&apos;" type="reporter" category="operators"><comment x="0" y="0" w="223.00000099999997" collapsed="false">Takes a text string as input, divides it into words treating one or more spaces as a word separator (only spaces count; punctuation is part of the word) and reports a text string containing all but the first word, with one space between words and no spaces at the beginning or end. (Note: consider using SENTENCE-&gt;LIST and processing the resulting list instead of doing recursion on sentences in text string form.  List operations are faster.)</comment><header></header><code></code><translations>pt:_ sem a primeira palavra&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doDeclareVariables"><list><l>index</l><l>bf</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>bf</l><l></l></block><block s="doSetVar"><l>index</l><l>1</l></block><block s="doIf"><block s="reportEquals"><block s="reportStringSize"><block var="sentence"/></block><l>0</l></block><script><block s="doReport"><block s="reportListItem"><l>1</l><block s="reportJoinWords"><list><l>empty </l><l>sentence</l></list></block></block></block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><block s="reportStringSize"><block var="sentence"/></block></block><block s="reportNot"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block></block><script><block s="doChangeVar"><l>index</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block><script><block s="doReport"><block s="reportListItem"><l>1</l><block s="reportJoinWords"><list><l>empty </l><l>sentence</l></list></block></block></block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><block s="reportStringSize"><block var="sentence"/></block></block><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block><script><block s="doChangeVar"><l>index</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="index"/><block s="reportStringSize"><block var="sentence"/></block></block><script><block s="doReport"><l></l></block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><block s="reportStringSize"><block var="sentence"/></block></block><block s="reportNot"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block></block><script><block s="doChangeVar"><l>index</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block><script><block s="doReport"><l></l></block></script></block><block s="doUntil"><block s="reportGreaterThan"><block var="index"/><block s="reportStringSize"><block var="sentence"/></block></block><script><block s="doSetVar"><l>bf</l><block s="reportJoinWords"><list><block var="bf"/><block s="reportLetter"><block var="index"/><block var="sentence"/></block></list></block></block><block s="doChangeVar"><l>index</l><l>1</l></block></script></block><block s="doReport"><block var="bf"/></block></script></block></script></block-definition><block-definition s="all but last letter of %&apos;string&apos;" type="reporter" category="operators"><comment x="0" y="0" w="218" collapsed="false">Takes a text string as input, and reports a new text string containing all but the last letter of the input.</comment><header></header><code></code><translations>pt:_ sem o último caractere&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doDeclareVariables"><list><l>result</l><l>i</l></list></block><block s="doWarp"><script><block s="doIf"><block s="reportEquals"><block s="reportStringSize"><block var="string"/></block><l>0</l></block><script><block s="doReport"><block s="reportListItem"><l>1</l><block s="reportSum"><l>0</l><l>0</l></block></block></block></script></block><block s="doSetVar"><l>result</l><l></l></block><block s="doSetVar"><l>i</l><l>1</l></block><block s="doUntil"><block s="reportEquals"><block var="i"/><block s="reportStringSize"><block var="string"/></block></block><script><block s="doSetVar"><l>result</l><block s="reportJoinWords"><list><block var="result"/><block s="reportLetter"><block var="i"/><block var="string"/></block></list></block></block><block s="doChangeVar"><l>i</l><l>1</l></block></script></block><block s="doReport"><block var="result"/></block></script></block></script></block-definition><block-definition s="all but last word of %&apos;sentence&apos;" type="reporter" category="operators"><comment x="0" y="0" w="211.99999999999997" collapsed="false">Takes a text string as input, divides it into words treating one or more spaces as a word separator (only spaces count; punctuation is part of the word) and reports a text string containing all but the last word, with one space between words and no spaces at the beginning or end.  (Note: consider using SENTENCE-&gt;LIST and processing the resulting list instead of doing recursion on sentences in text string form.  List operations are faster.)</comment><header></header><code></code><translations>pt:_ sem a última palavra&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doDeclareVariables"><list><l>index</l><l>bl</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>bl</l><l></l></block><block s="doSetVar"><l>index</l><block s="reportStringSize"><block var="sentence"/></block></block><block s="doIf"><block s="reportEquals"><block s="reportStringSize"><block var="sentence"/></block><l>0</l></block><script><block s="doReport"><block s="reportListItem"><l>1</l><block s="reportJoinWords"><list><l>empty </l><l>sentence</l></list></block></block></block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><l>1</l></block><block s="reportNot"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block></block><script><block s="doChangeVar"><l>index</l><l>-1</l></block></script></block><block s="doIf"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block><script><block s="doReport"><block s="reportListItem"><l>1</l><block s="reportJoinWords"><list><l>empty </l><l>sentence</l></list></block></block></block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><l>1</l></block><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block><script><block s="doChangeVar"><l>index</l><l>-1</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="index"/><l>1</l></block><script><block s="doReport"><l></l></block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><l>1</l></block><block s="reportNot"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block></block><script><block s="doChangeVar"><l>index</l><l>-1</l></block></script></block><block s="doIf"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block><script><block s="doReport"><l></l></block></script></block><block s="doUntil"><block s="reportLessThan"><block var="index"/><l>1</l></block><script><block s="doSetVar"><l>bl</l><block s="reportJoinWords"><list><block s="reportLetter"><block var="index"/><block var="sentence"/></block><block var="bl"/></list></block></block><block s="doChangeVar"><l>index</l><l>-1</l></block></script></block><block s="doReport"><block var="bl"/></block></script></block></script></block-definition><block-definition s="first word of %&apos;sentence&apos;" type="reporter" category="operators"><comment x="0" y="0" w="236.00000000000003" collapsed="false">Takes a text string as input, divides it into words treating one or more spaces as a word separator (only spaces count; punctuation is part of the word) and reports a text string containing only the first word, with no spaces before or after it.</comment><header></header><code></code><translations>pt:a primeira palavra de _&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doDeclareVariables"><list><l>index</l><l>first</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>first</l><l></l></block><block s="doSetVar"><l>index</l><l>1</l></block><block s="doIf"><block s="reportEquals"><block s="reportStringSize"><block var="sentence"/></block><l>0</l></block><script><block s="doReport"><block s="reportListItem"><l>1</l><block s="reportJoinWords"><list><l>empty </l><l>sentence</l></list></block></block></block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><block s="reportStringSize"><block var="sentence"/></block></block><block s="reportNot"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block></block><script><block s="doChangeVar"><l>index</l><l>1</l></block></script></block><block s="doIf"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block><script><block s="doReport"><block s="reportListItem"><l>1</l><block s="reportJoinWords"><list><l>empty </l><l>sentence</l></list></block></block></block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><block s="reportStringSize"><block var="sentence"/></block></block><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block><script><block s="doSetVar"><l>first</l><block s="reportJoinWords"><list><block var="first"/><block s="reportLetter"><block var="index"/><block var="sentence"/></block></list></block></block><block s="doChangeVar"><l>index</l><l>1</l></block></script></block><block s="doIf"><block s="reportNot"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block><script><block s="doSetVar"><l>first</l><block s="reportJoinWords"><list><block var="first"/><block s="reportLetter"><block var="index"/><block var="sentence"/></block></list></block></block></script></block><block s="doReport"><block var="first"/></block></script></block></script></block-definition><block-definition s="last letter of %&apos;word&apos;" type="reporter" category="operators"><comment x="0" y="0" w="260" collapsed="false">Takes a text string as input, and reports the last character in the string.</comment><header></header><code></code><translations>pt:o último caractere de _&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doReport"><block s="reportLetter"><block s="reportStringSize"><block var="word"/></block><block var="word"/></block></block></script></block-definition><block-definition s="last word of %&apos;sentence&apos;" type="reporter" category="operators"><comment x="0" y="0" w="262" collapsed="false">Takes a text string as input, divides it into words treating one or more spaces as a word separator (only spaces count; punctuation is part of the word) and reports a text string containing only the last word of the input, with no spaces before or after it.</comment><header></header><code></code><translations>pt:a última palavra de _&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doDeclareVariables"><list><l>index</l><l>last</l></list></block><block s="doWarp"><script><block s="doSetVar"><l>last</l><l></l></block><block s="doSetVar"><l>index</l><block s="reportStringSize"><block var="sentence"/></block></block><block s="doIf"><block s="reportEquals"><block s="reportStringSize"><block var="sentence"/></block><l>0</l></block><script><block s="doReport"><block s="reportListItem"><l>1</l><block s="reportJoinWords"><list><l>empty </l><l>sentence</l></list></block></block></block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><l>1</l></block><block s="reportNot"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block></block><script><block s="doChangeVar"><l>index</l><l>-1</l></block></script></block><block s="doIf"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block><script><block s="doReport"><block s="reportListItem"><l>1</l><block s="reportJoinWords"><list><l>empty </l><l>sentence</l></list></block></block></block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><l>1</l></block><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block><script><block s="doSetVar"><l>last</l><block s="reportJoinWords"><list><block s="reportLetter"><block var="index"/><block var="sentence"/></block><block var="last"/></list></block></block><block s="doChangeVar"><l>index</l><l>-1</l></block></script></block><block s="doIf"><block s="reportNot"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block><script><block s="doSetVar"><l>last</l><block s="reportJoinWords"><list><block s="reportLetter"><block var="index"/><block var="sentence"/></block><block var="last"/></list></block></block></script></block><block s="doReport"><block var="last"/></block></script></block></script></block-definition><block-definition s="empty word? %&apos;word&apos;" type="predicate" category="operators"><comment x="0" y="0" w="208.00000000000003" collapsed="false">Takes a text string as input, and reports TRUE if the string has no characters in it of any kind, otherwise false.</comment><header></header><code></code><translations>pt:a palavra _ está vazia&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doReport"><block s="reportEquals"><block s="reportStringSize"><block var="word"/></block><l>0</l></block></block></script></block-definition><block-definition s="empty sentence? %&apos;sentence&apos;" type="predicate" category="operators"><comment x="0" y="0" w="221" collapsed="false">Takes a text string as input, and reports TRUE if the input contains no characters other than spaces (therefore, no words when the string is considered as a sentence), otherwise FALSE.</comment><header></header><code></code><translations>pt:a frase _ está vazia&#xD;</translations><inputs><input type="%txt"></input></inputs><script><block s="doDeclareVariables"><list><l>index</l></list></block><block s="doSetVar"><l>index</l><l>1</l></block><block s="doIf"><block s="reportEquals"><block s="reportStringSize"><block var="sentence"/></block><l>0</l></block><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script></block><block s="doUntil"><block s="reportOr"><block s="reportEquals"><block var="index"/><block s="reportStringSize"><block var="sentence"/></block></block><block s="reportNot"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></block></block><script><block s="doChangeVar"><l>index</l><l>1</l></block></script></block><block s="doReport"><block s="reportEquals"><block s="reportLetter"><block var="index"/><block var="sentence"/></block><l> </l></block></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;pt:uma frase com as palavras _&#xD;</translations><inputs><input type="%mult%txt"></input></inputs><script><block s="doIf"><block s="reportListIsEmpty"><block s="reportCDR"><block var="words"/></block></block><script><block s="doReport"><block s="reportListItem"><l>1</l><block var="words"/></block></block></script></block><block s="doIf"><block s="reportEquals"><l></l><block s="reportListItem"><l>1</l><block var="words"/></block></block><script><block s="doReport"><custom-block s="join words %mult%txt"><block s="reportCDR"><block var="words"/></block></custom-block></block></script></block><block s="doIf"><block s="reportEquals"><l></l><block s="reportListItem"><l>2</l><block var="words"/></block></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></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;pt:uma frase com as palavras em _&#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;pt:uma lista com as palavras da frase _&#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="word $arrowRight list %&apos;word&apos;" type="reporter" category="operators"><comment x="0" y="0" w="146.42857142857144" collapsed="false">report a list in which each item is one letter from the input word</comment><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;pt:uma lista com os caracteres da palavra _&#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="list $arrowRight word %&apos;list&apos;" type="reporter" category="operators"><comment x="0" y="0" w="158.57142857142858" collapsed="false">join all the items of the input list&#xD;into a single word, and report it</comment><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;pt:uma palavra com os caracteres em _&#xD;</translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="reportJoinWords"><block var="list"/></block></block></script></block-definition></blocks><variables><variable name="numbers"><list struct="atomic" id="1079">89,67,5,90,-2,0,190,8</list></variable></variables></project><media name="Lab 4.3 " app="Snap! 5.4, http://snap.berkeley.edu" version="1"></media></snapdata>