<snapdata remixID="10033185"><project name="Lab 4.3 Starter" app="Snap! 6, https://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" hyperops="true" codify="false" inheritance="true" sublistIDs="false" scheduled="false" id="1"><pentrails>data:image/png;base64,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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="18.7578125" y="-80" 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="124.84251968503929" y="181.48818897637787"><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>-1</l><l>0</l><l>1</l><l>2</l><l>3</l><l>4</l><l>6</l><l>1000</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="631.51640725" y="463.400002"><custom-block s="list $arrowRight sentence %l"><custom-block s="only evens %l"><block var="numbers"/></custom-block></custom-block></script></scripts></sprite><watcher var="numbers" style="normal" x="10" y="10" color="243,118,29" extX="80" extY="70" hidden="true"/><watcher var="i" style="normal" x="10" y="103.000002" color="243,118,29" hidden="true"/><watcher var="sum" style="normal" x="10" y="124.00000399999999" color="243,118,29" hidden="true"/><watcher var="average" style="normal" x="10" y="145.00000599999998" color="243,118,29" hidden="true"/><watcher var="negative" style="normal" x="10" y="166.00000799999998" color="243,118,29" hidden="true"/><watcher var="i2" style="normal" x="10" y="187.00000999999997" color="243,118,29" hidden="true"/><watcher var="increasing?" style="normal" x="10" y="208.00001199999997" color="243,118,29" hidden="true"/><watcher var="highest" style="normal" x="10" y="229.00001399999996" color="243,118,29" hidden="true"/></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="doSetVar"><l>i</l><l>0</l></block><block s="doSetVar"><l>sum</l><l>0</l></block><block s="doRepeat"><block s="reportListLength"><block var="numbers"/></block><script><block s="doChangeVar"><l>i</l><l>1</l></block><block s="doSetVar"><l>sum</l><block s="reportSum"><block var="sum"/><block s="reportListItem"><block var="i"/><block var="numbers"/></block></block></block></script></block><block s="doReport"><block var="sum"/></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="doSetVar"><l>i</l><l>0</l></block><block s="doSetVar"><l>average</l><l>0</l></block><block s="doRepeat"><block s="reportListLength"><block var="numbers"/></block><script><block s="doChangeVar"><l>i</l><l>1</l></block><block s="doSetVar"><l>average</l><block s="reportSum"><block var="average"/><block s="reportListItem"><block var="i"/><block var="numbers"/></block></block></block></script></block><block s="doSetVar"><l>average</l><block s="reportQuotient"><block var="average"/><block s="reportListLength"><block var="numbers"/></block></block></block><block s="doReport"><block var="average"/></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="doSetVar"><l>i</l><l>0</l></block><block s="doSetVar"><l>negative</l><l>0</l></block><block s="doRepeat"><block s="reportListLength"><block var="numbers"/></block><script><block s="doChangeVar"><l>i</l><l>1</l></block><block s="doIf"><block s="reportLessThan"><block s="reportListItem"><block var="i"/><block var="numbers"/></block><l>0</l></block><script><block s="doChangeVar"><l>negative</l><l>1</l></block></script></block></script></block><block s="doIf"><block s="reportGreaterThan"><block var="negative"/><l>0</l></block><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script></block><block s="doIf"><block s="reportEquals"><block var="negative"/><l>0</l></block><script><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block></script><scripts><script x="298" y="188.50000000000006"><block s="doSetVar"><l>sum</l><block s="reportSum"><block var="sum"/><l></l></block></block></script><script x="162.9951171875" y="236.50000000000006"><block var="sum"/></script><script x="251" y="283.50000000000006"><block s="doReport"><l>Not implemented</l></block></script></scripts></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="doSetVar"><l>i</l><l>0</l></block><block s="doSetVar"><l>i2</l><l>1</l></block><block s="doSetVar"><l>increasing?</l><l>0</l></block><block s="doRepeat"><block s="reportListLength"><block var="numbers"/></block><script><block s="doChangeVar"><l>i</l><l>1</l></block><block s="doChangeVar"><l>i2</l><l>1</l></block><block s="doIf"><block s="reportOr"><block s="reportLessThan"><block s="reportListItem"><block var="i"/><block var="numbers"/></block><block s="reportListItem"><block var="i2"/><block var="numbers"/></block></block><block s="reportEquals"><block s="reportListItem"><block var="i"/><block var="numbers"/></block><block s="reportListItem"><block var="i2"/><block var="numbers"/></block></block></block><script><block s="doChangeVar"><l>increasing?</l><l>1</l></block></script></block></script></block><block s="doIfElse"><block s="reportEquals"><block var="increasing?"/><block s="reportDifference"><block s="reportListLength"><block var="numbers"/></block><l>1</l></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><scripts><script x="199" y="137.66666666666669"><block s="doSetVar"><l>sum</l><block s="reportSum"><block var="sum"/><l></l></block></block></script><script x="294.6416015625" y="169.66666666666669"><block var="i"/></script><script x="243" y="412.3333333333334"><block s="doReport"><l>Not implemented</l></block></script></scripts></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="doSetVar"><l>i</l><l>0</l></block><block s="doSetVar"><l>highest</l><block s="reportListItem"><l>1</l><block var="numbers"/></block></block><block s="doRepeat"><block s="reportListLength"><block var="numbers"/></block><script><block s="doChangeVar"><l>i</l><l>1</l></block><block s="doIf"><block s="reportGreaterThan"><block s="reportListItem"><block var="i"/><block var="numbers"/></block><block var="highest"/></block><script><block s="doSetVar"><l>highest</l><block s="reportListItem"><block var="i"/><block var="numbers"/></block></block></script></block></script></block><block s="doReport"><block var="highest"/></block></script><scripts><script x="240" y="86.83333333333331"><block s="doReport"><l>Not implemented</l></block></script><script x="256.7958984375" y="226.33333333333331"><block s="reportSum"><block var="sum"/><l></l></block></script><script x="141.9951171875" y="236.16666666666669"><block var="sum"/></script></scripts></block-definition><block-definition s="make all positive %&apos;List of Numbers&apos;" type="reporter" category="lists"><comment 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="doSetVar"><l>i</l><l>0</l></block><block s="doSetVar"><l>sum</l><l>0</l></block><block s="doRepeat"><block s="reportListLength"><block var="numbers"/></block><script><block s="doChangeVar"><l>i</l><l>1</l></block><block s="doIf"><block s="reportLessThan"><block s="reportListItem"><block var="i"/><block var="numbers"/></block><l>0</l></block><script><block s="doReplaceInList"><block var="i"/><block var="numbers"/><block s="reportProduct"><block s="reportListItem"><block var="i"/><block var="numbers"/></block><l>-1</l></block></block></script></block></script></block><block s="doReport"><block var="numbers"/></block></script><scripts><script x="117.3603515625" y="240.1666666666668"><block s="reportNewList"><list><l></l></list></block></script></scripts></block-definition><block-definition s="only evens %&apos;List of Numbers&apos;" type="reporter" category="lists"><comment 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="doSetVar"><l>i</l><l>0</l></block><block s="doRepeat"><block s="reportListLength"><block var="numbers"/></block><script><block s="doChangeVar"><l>i</l><l>1</l></block><block s="doIf"><block s="reportNot"><block s="reportEquals"><block s="reportModulus"><block s="reportListItem"><block var="i"/><block var="numbers"/></block><l>2</l></block><l>0</l></block></block><script><block s="doDeleteFromList"><block var="i"/><block var="numbers"/></block></script></block></script></block><block s="doReport"><block var="numbers"/></block></script><scripts><script x="161" y="245.1666666666668"><block s="doReport"><block var="List of Numbers"/></block></script><script x="274" y="176.83333333333331"><block s="doSetVar"><l>sum</l><l>0</l></block></script></scripts></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="1355">0,2,4,6,1000</list></variable><variable name="i"><l>8</l></variable><variable name="sum"><l>0</l></variable><variable name="average"><l>126.875</l></variable><variable name="negative"><l>1</l></variable><variable name="i2"><l>9</l></variable><variable name="increasing?"><l>7</l></variable><variable name="highest"><l>1000</l></variable></variables></project><media name="Lab 4.3 Starter" app="Snap! 6, https://snap.berkeley.edu" version="1"></media></snapdata>