<snapdata remixID="9954617"><project name="Lab 3.1&lt;Sarah&gt; Drawing Shapes (Again)" app="Snap! 6, https://snap.berkeley.edu" version="1"><notes></notes><thumbnail>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAAB4CAYAAAB1ovlvAAACJUlEQVR4Xu3SwQkAIAADMd1/6AoucZ90gcKRu23HFIgKXACj8m5/AQBBSAsAmOZ3DiADaQEA0/zOAWQgLQBgmt85gAykBQBM8zsHkIG0AIBpfucAMpAWADDN7xxABtICAKb5nQPIQFoAwDS/cwAZSAsAmOZ3DiADaQEA0/zOAWQgLQBgmt85gAykBQBM8zsHkIG0AIBpfucAMpAWADDN7xxABtICAKb5nQPIQFoAwDS/cwAZSAsAmOZ3DiADaQEA0/zOAWQgLQBgmt85gAykBQBM8zsHkIG0AIBpfucAMpAWADDN7xxABtICAKb5nQPIQFoAwDS/cwAZSAsAmOZ3DiADaQEA0/zOAWQgLQBgmt85gAykBQBM8zsHkIG0AIBpfucAMpAWADDN7xxABtICAKb5nQPIQFoAwDS/cwAZSAsAmOZ3DiADaQEA0/zOAWQgLQBgmt85gAykBQBM8zsHkIG0AIBpfucAMpAWADDN7xxABtICAKb5nQPIQFoAwDS/cwAZSAsAmOZ3DiADaQEA0/zOAWQgLQBgmt85gAykBQBM8zsHkIG0AIBpfucAMpAWADDN7xxABtICAKb5nQPIQFoAwDS/cwAZSAsAmOZ3DiADaQEA0/zOAWQgLQBgmt85gAykBQBM8zsHkIG0AIBpfucAMpAWADDN7xxABtICAKb5nQPIQFoAwDS/cwAZSAsAmOZ3DiADaQEA0/zOAWQgLQBgmt/5A4Lj3qhsHKpPAAAAAElFTkSuQmCC</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><watcher scope="Shapes" s="xPosition" style="normal" x="10" y="10" color="74,108,212" hidden="true"/><watcher scope="Shapes" s="yPosition" style="normal" x="10" y="31.000001999999995" color="74,108,212" hidden="true"/><watcher scope="Shapes" s="direction" style="normal" x="10" y="52.00000399999999" color="74,108,212" hidden="true"/><watcher var="number of sides" style="normal" x="10" y="73.00000599999998" color="243,118,29" hidden="true"/><watcher var="side length" style="normal" x="10" y="94.00000799999998" color="243,118,29" hidden="true"/><sprite name="Shapes" idx="1" x="0" y="0" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" hidden="true" costume="0" color="145,26,68,1" pen="tip" id="13"><costumes><list struct="atomic" id="14"></list></costumes><sounds><list struct="atomic" id="15"></list></sounds><blocks></blocks><variables></variables><scripts><script x="31" y="10"><block s="receiveKey"><l><option>space</option></l><comment w="90" collapsed="false">This code draws any polygon with the number of sides the runner inputs. This code uses the polygon equation to figure out the interior angles, and subracts that from 180 to know the exterior angle to turn. </comment></block><block s="clear"></block><block s="show"></block><block s="down"></block><block s="setColor"><color>145,26,68,1</color></block><block s="setSize"><l>1</l></block><block s="doAsk"><l>Enter a natural number that represents the shape you want me to draw!</l></block><block s="doRepeat"><block s="getLastAnswer"></block><script><block s="forward"><l>90</l></block><block s="turn"><block s="reportDifference"><l>180</l><block s="reportQuotient"><block s="reportProduct"><block s="reportDifference"><block s="getLastAnswer"></block><l>2</l></block><l>180</l></block><block s="getLastAnswer"></block></block></block></block><block s="doWait"><l>.3</l></block></script></block><block s="up"></block><block s="doGotoObject"><l><option>center</option></l></block><block s="setHeading"><l>90</l></block><block s="hide"></block></script><script x="31" y="367.83333333333326"><block s="receiveKey"><l><option>4</option></l></block><block s="clear"><comment w="90" collapsed="false">This code draws a square, and meets the criteria that a square has 4 congruent sides, and 4 right angles</comment></block><block s="show"></block><block s="down"></block><block s="setColor"><color>145,26,68,1</color></block><block s="setSize"><l>1</l></block><block s="doRepeat"><l>4</l><script><block s="forward"><l>90</l></block><block s="turn"><l>90</l></block><block s="doWait"><l>.3</l></block></script></block><block s="up"></block><block s="doGotoObject"><l><option>center</option></l></block><block s="setHeading"><l>90</l></block><block s="hide"></block></script><script x="31" y="689.0000000000002"><block s="receiveKey"><l><option>9</option></l></block><block s="clear"><comment w="90" collapsed="false">This code draws an equilateral triangle, and meets the criteria that an equilateral triangle has 3 congruent sides, as well as 3, 60 degree congruent angles.</comment></block><block s="show"></block><block s="down"></block><block s="setColor"><color>145,26,68,1</color></block><block s="setSize"><l>1</l></block><block s="doRepeat"><l>3</l><script><block s="forward"><l>90</l></block><block s="turn"><l>120</l></block><block s="doWait"><l>.3</l></block></script></block><block s="up"></block><block s="doGotoObject"><l><option>center</option></l></block><block s="setHeading"><l>90</l></block><block s="hide"></block></script><script x="31" y="1010.1666666666667"><block s="receiveKey"><l><option>5</option></l></block><block s="clear"><comment w="90" collapsed="false">This code draws a regular pentagon, and meets the criteria that a pentagon has 5 sides, and 540 degree sum of all the interior angles.</comment></block><block s="show"></block><block s="down"></block><block s="setColor"><color>145,26,68,1</color></block><block s="setSize"><l>1</l></block><block s="doRepeat"><l>5</l><script><block s="turnLeft"><l>72</l></block><block s="forward"><l>90</l></block><block s="doWait"><l>.3</l></block></script></block><block s="up"></block><block s="doGotoObject"><l><option>center</option></l></block><block s="setHeading"><l>90</l></block><block s="hide"></block></script><script x="31" y="1331.333333333333"><block s="receiveKey"><l><option>8</option></l></block><block s="clear"><comment w="90" collapsed="false">This code draws a  regular octagon, and meets the criteria that an octagon has 8 sides, and 1080 degree sum of all the interior angles.</comment></block><block s="gotoXY"><l>-70</l><l>103</l></block><block s="show"></block><block s="down"></block><block s="setColor"><color>145,26,68,1</color></block><block s="setSize"><l>1</l></block><block s="doRepeat"><l>8</l><script><block s="turn"><l>45</l></block><block s="forward"><l>90</l></block><block s="doWait"><l>.3</l></block></script></block><block s="up"></block><block s="doGotoObject"><l><option>center</option></l></block><block s="setHeading"><l>90</l></block><block s="hide"></block></script><script x="31" y="1673.4999999999995"><block s="receiveKey"><l><option>1</option></l><comment w="159" collapsed="false">This block of code asks the user what they want the side length of the square it&apos;s goign to draw to be. It shortens and abstrats the code by making it into one whole block. </comment></block><block s="doAsk"><l>What would you like the lenghts of each side of your polygon to be?</l></block><block s="doSetVar"><l>side length</l><block s="getLastAnswer"></block></block><custom-block s="draw square %s (1.1)"><block var="side length"/><comment w="90" collapsed="false">This custom block just reduces the normal code for drawing a square into a compressed block. </comment></custom-block></script><script x="22" y="1855.3333333333326"><block s="receiveKey"><l><option>2</option></l><comment w="222" collapsed="false">This block of code asks the user what they want the side length of the square it&apos;s goign to draw to be. It also uses a varibale called number of sides, which determines the amount of sides the code is goign to draw a shape for and automatically sets it to 4, to draw a square. It shortens and abstrats the code by making it into one whole block.</comment></block><block s="doAsk"><l>What would you like the lenghts of each side of your polygon to be?</l></block><block s="doSetVar"><l>side length</l><block s="getLastAnswer"></block></block><block s="doSetVar"><l>number of sides</l><l>4</l></block><custom-block s="draw square %s (1.2)"><block var="side length"/><comment w="90" collapsed="false">This custom block just reduces the normal code for drawing a square into a compressed block. However, unlike drawing a square 1.1, 1.2 adds the variable called number of sides in the repeat block, but automatically sets it to 4 so it can draw a square, and not any other polygon. </comment></custom-block></script><script x="20" y="2190.166666666666"><block s="receiveKey"><l><option>3</option></l><comment w="394" collapsed="false">This block of code uses a varibale called number of sides, which determines the amount of sides the code is goign to draw a shape for and asks the user how many sides they want to see the computer draw a shape for. It also asks the user what they want the side length of each side of the polygon it&apos;s goign to draw to be. </comment></block><block s="doAsk"><l>What is the number of sides that the shape you want me to draw has?</l></block><block s="doSetVar"><l>number of sides</l><block s="getLastAnswer"></block></block><block s="doAsk"><l>What would you like the lenghts of each side of your polygon to be?</l></block><block s="doSetVar"><l>side length</l><block s="getLastAnswer"></block></block><custom-block s="draw polygon %s %s (1.3)"><block var="side length"/><block var="number of sides"/><comment w="164" collapsed="false">This code draws any polygon with the number of sides the runner inputs. This code uses the polygon equation to figure out the interior angles, and subracts that from 180 to know the exterior angle to turn, for the specific shape it&apos;s goign to draw. This code also only draws a polygon if the number of sides the user has inputed is greater than 2, otherwise it gives the user an error message. This is a shortened and abstracted form of code since it&apos;s all made into one whole block. </comment></custom-block></script></scripts></sprite></sprites></stage><hidden></hidden><headers></headers><code></code><blocks><block-definition s="Draw Square" type="command" category="control"><header></header><code></code><translations></translations><inputs></inputs></block-definition><block-definition s="draw polygon %&apos;side length&apos; %&apos;number of sides&apos; (1.3)" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input></inputs><script><block s="doIfElse"><block s="reportGreaterThan"><block var="number of sides"/><l>2</l></block><script><block s="clear"></block><block s="show"></block><block s="down"></block><block s="doRepeat"><block var="number of sides"/><script><block s="forward"><block var="side length"/></block><block s="turn"><block s="reportDifference"><l>180</l><block s="reportQuotient"><block s="reportProduct"><block s="reportDifference"><block var="number of sides"/><l>2</l></block><l>180</l></block><block var="number of sides"/></block></block></block><block s="doWait"><l>.3</l></block></script></block><block s="up"></block><block s="hide"></block><block s="clear"></block></script><script><block s="show"></block><block s="doSayFor"><l>Sorry, I cannot draw a shape that does not have at least 3 sides.</l><l>4</l></block></script></block></script></block-definition><block-definition s="draw square %&apos;side length&apos; (1.1)" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="clear"></block><block s="show"></block><block s="down"></block><block s="doRepeat"><l>4</l><script><block s="forward"><block var="side length"/></block><block s="turn"><l>90</l></block><block s="doWait"><l>1</l></block></script></block><block s="up"></block><block s="hide"></block><block s="clear"></block></script></block-definition><block-definition s="draw square %&apos;side length&apos; (1.2)" type="command" category="motion"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="clear"></block><block s="show"></block><block s="down"></block><block s="doRepeat"><block var="number of sides"/><script><block s="forward"><block var="side length"/></block><block s="turn"><l>90</l></block><block s="doWait"><l>1</l></block></script></block><block s="up"></block><block s="hide"></block><block s="clear"></block></script></block-definition></blocks><variables><variable name="number of sides"><l>8</l></variable><variable name="side length"><l>30</l></variable></variables></project><media name="Lab 3.1<Sarah> Drawing Shapes (Again)" app="Snap! 6, https://snap.berkeley.edu" version="1"></media></snapdata>