<snapdata remixID="9937233"><project name="Lab 4.2 Traversing Lists " app="Snap! 6, https://snap.berkeley.edu" version="1"><notes></notes><thumbnail>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAAB4CAYAAAB1ovlvAAADOklEQVR4Xu3VMUpjYRSG4T+NjaaysNIV2IorSJMykMLCxiCIkJ24LReipLGxsBauaDHFMDPcAwe+Yh7rc/8PXh90MU3TNPwoECqwADBU3uxPAQBBiBYAMJrfOIAMRAsAGM1vHEAGogUAjOY3DiAD0QIARvMbB5CBaAEAo/mNA8hAtACA0fzGAWQgWgDAaH7jADIQLQBgNL9xABmIFgAwmt84gAxECwAYzW8cQAaiBQCM5jcOIAPRAgBG8xsHkIFoAQCj+Y0DyEC0AIDR/MYBZCBaAMBofuMAMhAtAGA0v3EAGYgWADCa3ziADEQLABjNbxxABqIFAIzmNw4gA9ECAEbzGweQgWgBAKP5jQPIQLQAgNH8xgFkIFoAwGh+4wAyEC0AYDS/cQAZiBYAMJrfOIAMRAsAGM1vHEAGogUAjOY3DiAD0QIARvMbB5CBaAEAo/mNA8hAtACA0fzGAWQgWgDAaH7jADIQLQBgNL9xABmIFgAwmt84gAxECwAYzW8cQAaiBQCM5jcOIAPRAgBG8xsHkIFoAQCj+Y0DyEC0AIDR/MYBZCBaAMBofuMAMhAtAGA0v3EAGYgWADCa3ziADEQLADgj/zRNY7FYzLh0Ui0A4Mxij4+P4/z8fCyXy7HdbsfZ2dnML539qwCAM328vLyM+/v7cXx8/PPF+/v7uL29/fnLeHd35y/kzI6/nwFYCPf8/Dyenp7++MXn5+dYr9djt9uNo6Ojwqv/9ymAhd//fr8fh8Ph1xcfHx9jtVqNk5OTcXNzM05PTwuvOf0uAOBMBw8PD+P19XVcXFyM6+vrcXV1NS4vL2d+7exvBQCcYePt7W18//vdbDYzrp1UCgBYqeW2vQCA7Uk9WCkAYKWW2/YCALYn9WClAICVWm7bCwDYntSDlQIAVmq5bS8AYHtSD1YKAFip5ba9AIDtST1YKQBgpZbb9gIAtif1YKUAgJVabtsLANie1IOVAgBWarltLwBge1IPVgoAWKnltr0AgO1JPVgpAGClltv2AgC2J/VgpQCAlVpu2wsA2J7Ug5UCAFZquW0vAGB7Ug9WCgBYqeW2vQCA7Uk9WCkAYKWW2/YCALYn9WClwBcUIAu3ErrvWQAAAABJRU5ErkJggg==</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,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAOhUlEQVR4Xu3VwQkAAAjEMN1/abewn7jAQRC64wgQIECAAIF3gX1fNEiAAAECBAiMAHsCAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+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+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQIHLFxAWmhEwHPAAAAAElFTkSuQmCC</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="11" y="-86" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="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="12.081081081081123" y="10"><block s="receiveKey"><l><option>c</option></l><comment w="90" collapsed="false">Get the sum of a list.</comment></block><block s="doSetVar"><l>temps</l><block s="reportNewList"><list><l>1</l><l>2</l><l>3</l><l>4</l><l>5</l></list></block></block><block s="doDeclareVariables"><list><l>sum</l></list></block><block s="doSetVar"><l>sum</l><l>0</l></block><block s="doForEach"><l>item</l><block var="temps"/><script><block s="doChangeVar"><l>sum</l><block var="item"/></block></script></block><block s="doSayFor"><block var="sum"/><l>2</l></block></script><script x="11.828828828828847" y="218.46546546546486"><block s="receiveKey"><l><option>d</option></l><comment w="90" collapsed="false">Using custom reporter block &quot;sum of&quot;.  Right click on &quot;sum of&quot; block and click edit to view code.</comment></block><block s="doSayFor"><custom-block s="sum of %l"><block s="reportNewList"><list><l>1</l><l>2</l><l>3</l><l>4</l><l>5</l></list></block></custom-block><l>2</l></block></script><script x="12.31531531531536" y="332.792792792792"><block s="receiveKey"><l><option>e</option></l><comment w="90" collapsed="false">Ask user for list of numbers.</comment></block><block s="doSetVar"><l>numbers</l><block s="reportNewList"><list></list></block></block><block s="doUntil"><block s="reportEquals"><block s="reportListLength"><block var="numbers"/></block><l>5</l></block><script><block s="doAsk"><l>What number would you like to add?</l></block><block s="doAddToList"><block s="getLastAnswer"></block><block var="numbers"/></block></script></block><block s="doSayFor"><block var="numbers"/><l>2</l></block></script><script x="418" y="98.29999999999994"><block s="doSetVar"><l>list</l><block s="reportNewList"><list><l>1</l><l>2</l><l>3</l><l>4</l></list></block></block></script><script x="461" y="157.95945945945928"><block s="doSetVar"><l>temps</l><block s="reportNewList"><list><l>1</l><l>2</l><l>3</l><l>4</l><l>5</l></list></block></block><block s="doDeclareVariables"><list><l>max</l></list></block><block s="doSetVar"><l>max</l><l>0</l></block><block s="doForEach"><l>item</l><block var="temps"/><script><block s="doIf"><block s="reportGreaterThan"><block var="item"/><block var="max"/></block><script></script></block></script></block><block s="doSayFor"><block var="sum"/><l>2</l></block></script><script x="511.12109375" y="404.6666666666668"><custom-block s="%l is increasing"><block var="list"/></custom-block></script><script x="35.22522522522527" y="998.2762762762746"><block s="receiveKey"><l><option>b</option></l><comment w="176.48648648648646" collapsed="false">Two ways to delete all items from list: &#xD;1)use for loop (default way for most programming languages).&#xD;2)or, use the delete block with &quot;all&quot; dropdown. </comment></block><block s="doSetVar"><l>list</l><block s="reportNewList"><list><l>a</l><l>b</l><l>c</l><l>d</l></list></block></block><block s="doWait"><l>1</l></block><block s="doForEach"><l>item</l><block var="list"/><script><block s="doDeleteFromList"><l>1</l><block var="list"/></block></script></block><block s="doWait"><l>1</l></block><block s="doSetVar"><l>list</l><block s="reportNewList"><list><l>a</l><l>b</l><l>c</l><l>d</l></list></block></block><block s="doWait"><l>1</l></block><block s="doDeleteFromList"><l><option>all</option></l><block var="list"/></block></script><script x="433.78378378378375" y="991.5585585585578"><block s="receiveKey"><l><option>a</option></l><comment w="90" collapsed="false">Say all element in a list.</comment></block><block s="doSetVar"><l>list</l><block s="reportNewList"><list><l>a</l><l>b</l><l>c</l><l>d</l></list></block></block><block s="doDeclareVariables"><list><l>index</l></list></block><block s="doSetVar"><l>index</l><l>1</l></block><block s="doForEach"><l>item</l><block var="list"/><script><block s="doSayFor"><block s="reportJoinWords"><list><l>List element at index </l><block var="index"/><l> is </l><block var="item"/></list></block><l>3</l></block><block s="doChangeVar"><l>index</l><l>1</l></block></script></block></script><script x="513.1210937500001" y="370.66666666666674"><custom-block s="average of %l"><l/></custom-block></script><script x="328" y="447.9999999999997"><block s="receiveGo"></block><block s="doSetVar"><l>numbers</l><block s="reportNewList"><list></list></block></block><block s="doUntil"><block s="reportEquals"><block s="reportListLength"><block var="numbers"/></block><l>5</l></block><script><block s="doAsk"><l>What number would you like to add?</l></block><block s="doAddToList"><block s="getLastAnswer"></block><block var="numbers"/></block></script></block><block s="doSayFor"><block s="reportJoinWords"><list><l>sum = </l><custom-block s="sum of %l"><block var="numbers"/></custom-block></list></block><l>2</l></block><block s="doSayFor"><block s="reportJoinWords"><list><l>average = </l><custom-block s="average of %l"><block var="numbers"/></custom-block></list></block><l>2</l></block><block s="doSayFor"><block s="reportJoinWords"><list><l>max = </l><custom-block s="max"></custom-block></list></block><l>2</l></block><block s="doSayFor"><block s="reportJoinWords"><list><l>indcluding negative? </l><custom-block s="%l includes negative"><block var="numbers"/></custom-block></list></block><l>2</l></block><block s="doSayFor"><block s="reportJoinWords"><list><l>increasing? </l><custom-block s="%l is increasing"><block var="numbers"/></custom-block></list></block><l>2</l></block></script></scripts></sprite><watcher var="temps" style="normal" x="145" y="10.000001999999995" color="243,118,29" hidden="true"/><watcher var="list" style="normal" x="15" y="9" color="243,118,29" hidden="true"/><watcher var="numbers" style="normal" x="290" y="8" color="243,118,29" hidden="true"/><watcher var="varIndex" style="normal" x="10" y="10" color="243,118,29" hidden="true"/><watcher var="varBoolean" style="normal" x="10" y="31.000001999999995" color="243,118,29" hidden="true"/></sprites></stage><hidden></hidden><headers></headers><code></code><blocks><block-definition s="sum of %&apos;list&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doDeclareVariables"><list><l>sum</l></list></block><block s="doSetVar"><l>sum</l><l>0</l></block><block s="doForEach"><l>item</l><block var="list"/><script><block s="doChangeVar"><l>sum</l><block var="item"/></block></script></block><block s="doReport"><block var="sum"/></block></script></block-definition><block-definition s="average of %&apos;list&apos;" type="reporter" category="lists"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doReport"><block s="reportQuotient"><custom-block s="sum of %l"><block var="list"/></custom-block><block s="reportListLength"><block var="list"/></block></block></block></script></block-definition><block-definition s="%&apos;list&apos; includes negative" type="predicate" category="lists"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doForEach"><l>item</l><block var="list"/><script><block s="doIf"><block s="reportLessThan"><block var="item"/><l>0</l></block><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script></block></script></block><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block-definition><block-definition s="%&apos;list&apos; is increasing" type="predicate" category="variables"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doDeclareVariables"><list><l>varIndex</l><l>varBoolean</l></list></block><block s="doSetVar"><l>varIndex</l><block s="reportListIndex"><l>1</l><block var="list"/></block></block><block s="doSetVar"><l>varBoolean</l><block s="reportBoolean"><l><bool>true</bool></l></block></block><block s="doForEach"><l>item</l><block var="list"/><script><block s="doIfElse"><block s="reportAnd"><block s="reportOr"><block s="reportEquals"><block var="item"/><block var="varIndex"/></block><block s="reportGreaterThan"><block var="item"/><block var="varIndex"/></block></block><block var="varBoolean"/></block><script><block s="doSetVar"><l>varBoolean</l><block s="reportBoolean"><l><bool>true</bool></l></block></block><block s="doSetVar"><l>varIndex</l><block var="item"/></block></script><script><block s="doSetVar"><l>varBoolean</l><block s="reportBoolean"><l><bool>false</bool></l></block></block></script></block></script></block><block s="doReport"><block var="varBoolean"/></block></script></block-definition><block-definition s="max" type="reporter" category="variables"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doDeclareVariables"><list><l>max</l></list></block><block s="doSetVar"><l>max</l><l>0</l></block><block s="doForEach"><l>item</l><block var="numbers"/><script><block s="doIf"><block s="reportGreaterThan"><block var="item"/><block var="max"/></block><script><block s="doSetVar"><l>max</l><block var="item"/></block></script></block></script></block><block s="doReport"><block var="max"/></block></script></block-definition></blocks><variables><variable name="list"><list struct="atomic" id="420">1,2,3,4</list></variable><variable name="temps"><list struct="atomic" id="421">1,2,3,4,5</list></variable><variable name="numbers"><list struct="atomic" id="422">1,2,3,4,5</list></variable><variable name="varIndex"><l>0</l></variable><variable name="varBoolean"><l>0</l></variable></variables></project><media name="Lab 4.2 Traversing Lists " app="Snap! 6, https://snap.berkeley.edu" version="1"></media></snapdata>