<snapdata remixID="14691452"><project name="AbstractDataType Lecture" app="Snap! 11.0.4, https://snap.berkeley.edu" version="2"><notes></notes><thumbnail>data:image/png;base64,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</thumbnail><scenes select="1"><scene name="AbstractDataType Lecture"><notes></notes><hidden></hidden><headers></headers><code></code><blocks><block-definition s="Coordinate Points, X Point: %&apos;x&apos; Y Point: %&apos;y&apos;" type="reporter" category="other"><header></header><code></code><translations></translations><inputs><input type="%n" initial="1"></input><input type="%n" initial="1"></input></inputs><script><block s="doReport"><block s="reportNewList"><list><block var="x"/><block var="y"/></list></block></block></script></block-definition><block-definition s="Select X Coordinate from data record %&apos;singlerecord&apos;" type="reporter" category="other"><header></header><code></code><translations></translations><inputs><input type="%l" initial="1"></input></inputs><script><block s="doReport"><block s="reportListItem"><l>1</l><block var="singlerecord"/></block></block></script></block-definition><block-definition s="Select Y Coordinate from data record %&apos;singlerecord&apos;" type="reporter" category="other"><header></header><code></code><translations></translations><inputs><input type="%l" initial="1"></input></inputs><script><block s="doReport"><block s="reportListItem"><l>2</l><block var="singlerecord"/></block></block></script></block-definition><block-definition s="Draw Shape From List of Coordinates %&apos;list&apos;" type="command" category="other"><header></header><code></code><translations></translations><inputs><input type="%l" initial="1"></input></inputs><script><block s="doForEach"><l>item</l><block var="list"/><script><block s="gotoXY"><custom-block s="Select X Coordinate from data record %l"><block var="item"/></custom-block><custom-block s="Select Y Coordinate from data record %l"><block var="item"/></custom-block></block></script></block></script></block-definition></blocks><primitives><block-definition s="move %&apos;steps&apos; steps" type="command" category="motion" selector="forward" primitive="forward"><header></header><code></code><translations></translations><inputs><input type="%n">10</input></inputs><script><block s="doPrimitive"><l><bool>true</bool></l><l>forward</l></block><block s="doGotoObject"><block s="reportVariadicSum"><list><block s="getPosition"></block><block s="reportVariadicProduct"><list><block s="reportNewList"><list><block s="reportMonadic"><l><option>sin</option></l><block s="direction"></block></block><block s="reportMonadic"><l><option>cos</option></l><block s="direction"></block></block></list></block><block var="steps"/></list></block></list></block></block></script></block-definition><block-definition s="if on edge, bounce" type="command" category="motion" selector="bounceOffEdge" primitive="bounceOffEdge"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doPrimitive"><l><bool>true</bool></l><l>bounceOffEdge</l></block><block s="doIf"><block s="reportTouchingObject"><l><option>edge</option></l></block><script><block s="doDeclareVariables"><list><l>get bounds</l><l>bounds</l><l>center</l><l>stage bounds</l><l>dir x</l><l>dir y</l><l>delta x</l><l>delta y</l></list></block><block s="doSetVar"><l>get bounds</l><block s="reifyReporter"><autolambda><block s="reportNewList"><list><block s="reportVariadicMin"><block s="reportCONS"><block s="reportNewList"><list><block s="reportGet"><l><option>left</option></l></block><block s="reportGet"><l><option>bottom</option></l></block></list></block><block s="reportMap"><block s="reifyReporter"><autolambda><block s="reportNewList"><list><block s="reportAttributeOf"><l><option>left</option></l><l></l></block><block s="reportAttributeOf"><l><option>bottom</option></l><l></l></block></list></block></autolambda><list></list></block><block s="reportGet"><l><option>parts</option></l></block></block></block></block><block s="reportVariadicMax"><block s="reportCONS"><block s="reportNewList"><list><block s="reportGet"><l><option>right</option></l></block><block s="reportGet"><l><option>top</option></l></block></list></block><block s="reportMap"><block s="reifyReporter"><autolambda><block s="reportNewList"><list><block s="reportAttributeOf"><l><option>right</option></l><l></l></block><block s="reportAttributeOf"><l><option>top</option></l><l></l></block></list></block></autolambda><list></list></block><block s="reportGet"><l><option>parts</option></l></block></block></block></block></list></block></autolambda><list></list></block></block><block s="doSetVar"><l>bounds</l><block s="evaluate"><block var="get bounds"/><list></list></block></block><block s="doSetVar"><l>center</l><block s="reportQuotient"><block s="reportVariadicSum"><block var="bounds"/></block><l>2</l></block></block><block s="doSetVar"><l>stage bounds</l><block s="reportAskFor"><block s="reportGet"><l><option>stage</option></l></block><block s="reifyReporter"><autolambda><block s="reportNewList"><list><block s="reportNewList"><list><block s="reportGet"><l><option>left</option></l></block><block s="reportGet"><l><option>bottom</option></l></block></list></block><block s="reportNewList"><list><block s="reportGet"><l><option>right</option></l></block><block s="reportGet"><l><option>top</option></l></block></list></block></list></block></autolambda><list></list></block><list></list></block></block><block s="doSetVar"><l>dir x</l><block s="reportMonadic"><l><option>sin</option></l><block s="direction"></block></block></block><block s="doSetVar"><l>dir y</l><block s="reportMonadic"><l><option>cos</option></l><block s="direction"></block></block></block><block s="doIf"><block s="reportVariadicLessThan"><list><block s="reportListItem"><l>1</l><block s="reportListItem"><l>1</l><block var="bounds"/></block></block><block s="reportListItem"><l>1</l><block s="reportListItem"><l>1</l><block var="stage bounds"/></block></block></list></block><script><block s="doSetVar"><l>dir x</l><block s="reportMonadic"><l><option>abs</option></l><block var="dir x"/></block></block></script><list></list></block><block s="doIf"><block s="reportVariadicGreaterThan"><list><block s="reportListItem"><l>1</l><block s="reportListItem"><l>2</l><block var="bounds"/></block></block><block s="reportListItem"><l>1</l><block s="reportListItem"><l>2</l><block var="stage bounds"/></block></block></list></block><script><block s="doSetVar"><l>dir x</l><block s="reportMonadic"><l><option>neg</option></l><block s="reportMonadic"><l><option>abs</option></l><block var="dir x"/></block></block></block></script><list></list></block><block s="doIf"><block s="reportVariadicGreaterThan"><list><block s="reportListItem"><l>2</l><block s="reportListItem"><l>2</l><block var="bounds"/></block></block><block s="reportListItem"><l>2</l><block s="reportListItem"><l>2</l><block var="stage bounds"/></block></block></list></block><script><block s="doSetVar"><l>dir y</l><block s="reportMonadic"><l><option>neg</option></l><block s="reportMonadic"><l><option>abs</option></l><block var="dir y"/></block></block></block></script><list></list></block><block s="doIf"><block s="reportVariadicLessThan"><list><block s="reportListItem"><l>2</l><block s="reportListItem"><l>1</l><block var="bounds"/></block></block><block s="reportListItem"><l>2</l><block s="reportListItem"><l>1</l><block var="stage bounds"/></block></block></list></block><script><block s="doSetVar"><l>dir y</l><block s="reportMonadic"><l><option>abs</option></l><block var="dir y"/></block></block></script><list></list></block><block s="setHeading"><block s="reportAtan2"><block var="dir x"/><block var="dir y"/></block></block><block s="doSetVar"><l>bounds</l><block s="evaluate"><block var="get bounds"/><list></list></block></block><block s="doGotoObject"><block s="reportVariadicSum"><list><block s="getPosition"></block><block s="reportDifference"><block var="center"/><block s="reportQuotient"><block s="reportVariadicSum"><block var="bounds"/></block><l>2</l></block></block></list></block></block><block s="doSetVar"><l>bounds</l><block s="evaluate"><block var="get bounds"/><list></list></block></block><block s="doIf"><block s="reportVariadicGreaterThan"><list><block s="reportListItem"><l>1</l><block s="reportListItem"><l>2</l><block var="bounds"/></block></block><block s="reportListItem"><l>1</l><block s="reportListItem"><l>2</l><block var="stage bounds"/></block></block></list></block><script><block s="doSetVar"><l>delta x</l><block s="reportDifference"><block s="reportListItem"><l>1</l><block s="reportListItem"><l>2</l><block var="stage bounds"/></block></block><block s="reportListItem"><l>1</l><block s="reportListItem"><l>2</l><block var="bounds"/></block></block></block></block></script><list></list></block><block s="doIf"><block s="reportVariadicLessThan"><list><block s="reportListItem"><l>2</l><block s="reportListItem"><l>1</l><block var="bounds"/></block></block><block s="reportListItem"><l>2</l><block s="reportListItem"><l>1</l><block var="stage bounds"/></block></block></list></block><script><block s="doSetVar"><l>delta y</l><block s="reportDifference"><block s="reportListItem"><l>2</l><block s="reportListItem"><l>1</l><block var="stage bounds"/></block></block><block s="reportListItem"><l>2</l><block s="reportListItem"><l>1</l><block var="bounds"/></block></block></block></block></script><list></list></block><block s="doIf"><block s="reportVariadicLessThan"><list><block s="reportListItem"><l>1</l><block s="reportListItem"><l>1</l><block var="bounds"/></block></block><block s="reportListItem"><l>1</l><block s="reportListItem"><l>1</l><block var="stage bounds"/></block></block></list></block><script><block s="doSetVar"><l>delta x</l><block s="reportDifference"><block s="reportListItem"><l>1</l><block s="reportListItem"><l>1</l><block var="stage bounds"/></block></block><block s="reportListItem"><l>1</l><block s="reportListItem"><l>1</l><block var="bounds"/></block></block></block></block></script><list></list></block><block s="doIf"><block s="reportVariadicGreaterThan"><list><block s="reportListItem"><l>2</l><block s="reportListItem"><l>2</l><block var="bounds"/></block></block><block s="reportListItem"><l>2</l><block s="reportListItem"><l>2</l><block var="stage bounds"/></block></block></list></block><script><block s="doSetVar"><l>delta y</l><block s="reportDifference"><block s="reportListItem"><l>2</l><block s="reportListItem"><l>2</l><block var="stage bounds"/></block></block><block s="reportListItem"><l>2</l><block s="reportListItem"><l>2</l><block var="bounds"/></block></block></block></block></script><list></list></block><block s="doGotoObject"><block s="reportVariadicSum"><list><block s="getPosition"></block><block s="reportNewList"><list><block var="delta x"/><block var="delta y"/></list></block></list></block></block></script><list></list></block></script></block-definition><block-definition s="pen down" type="command" category="pen" selector="down" primitive="down"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doPrimitive"><l><bool>true</bool></l><l>down</l></block></script></block-definition><block-definition s="list %&apos;inputs&apos;" type="reporter" category="lists" selector="reportNewList" primitive="reportNewList"><header></header><code></code><translations></translations><inputs><input type="%mult%s" readonly="true" irreplaceable="true" initial="1"></input></inputs><script><block s="doPrimitive"><l><bool>true</bool></l><l>reportNewList</l></block><block s="doReport"><block var="inputs"/></block></script></block-definition></primitives><stage name="Stage" width="480" height="360" costume="1" 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" id="598"><pentrails>data:image/png;base64,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</pentrails><costumes><list id="599"><item><ref mediaID="AbstractDataType Lecture_Stage_cst_XY Grid"></ref></item></list></costumes><sounds><list struct="atomic" id="600"></list></sounds><variables></variables><blocks></blocks><scripts><script x="306.47783251231533" y="57.01847290640404"><block s="doForEach"><l>item</l><l/><script></script></block></script></scripts><sprites select="1"><watcher var="diamondshape" style="normal" x="6.030150753768844" y="6.030150753768844" color="243,118,29" extX="128.5615234375" extY="103"/><watcher var="triangleshape" style="normal" x="6.030150753768844" y="82.01005145728642" color="243,118,29" extX="128.5615234375" extY="86"/><sprite name="Sprite" idx="1" x="239.99999999999997" y="0" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="0" color="0,0,0,1" pen="tip" id="611"><costumes><list struct="atomic" id="612"></list></costumes><sounds><list struct="atomic" id="613"></list></sounds><blocks></blocks><variables></variables><scripts><comment x="20" y="10" w="290.9852216748768" collapsed="false">Lists and Numbers are examples of Primitive Data Types</comment><script x="20" y="64"><block s="reportNewList"><list><l>240</l><l>0</l><l>0</l><l>100</l><l>-240</l><l>0</l><l>0</l><l>-100</l><l>240</l><l>0</l></list><comment w="165.3694581280788" collapsed="false">odd index numbers are x points&#xD;even index numbers are y points&#xD;draws a diamond</comment></block></script><script x="20" y="145"><block s="reportNewList"><list><l>240</l><l>0</l><l>0</l><l>100</l><l>-240</l><l>0</l><l>240</l><l></l></list><comment w="165.3694581280788" collapsed="false">odd index numbers are x points&#xD;even index numbers are y points&#xD;draws a Triangle</comment></block></script><comment x="20" y="226" w="307.2413793103449" collapsed="false">The list of numbers is confusing because it is not obvious which numbers are x and which are y coordinates. It will also be difficult to maintain (add or delete coordinates to the lists).&#xD;It would be better to create a matrix (a list of list). Each item in the list will be a list of x and y coordinates.</comment><comment x="20" y="328" w="414.1379310344828" collapsed="false">Abstract Data Types (ADT) is a custom data type created by the programmer to provide meaning to the data in your program. It is not built into the programming language. ADT are created with custom constructor and selector functions (blocks).&#xD;ADT are a form of abstraction because they make are program easier to understand, read, and debug.</comment><script x="20" y="430"><custom-block s="Coordinate Points, X Point: %n Y Point: %n"><l></l><l></l><comment w="413.1527093596059" collapsed="false">Step 1: Create A Reporter block (the constructor) that will take two numbers as the domain (x and y coordinates) and output a list as the range.</comment></custom-block></script><script x="20" y="499"><custom-block s="Select X Coordinate from data record %l"><custom-block s="Coordinate Points, X Point: %n Y Point: %n"><l>100</l><l>250</l></custom-block><comment w="421.5270935960591" collapsed="false">Step 2: Create two report blocks (the selectors) that will take the list created by the contructor block as the domain and output a single number as the range (one the x coordinate the second block the y coordinate).</comment></custom-block></script><script x="20" y="580"><custom-block s="Select Y Coordinate from data record %l"><custom-block s="Coordinate Points, X Point: %n Y Point: %n"><l>100</l><l>250</l></custom-block></custom-block></script><script x="20" y="627.8333333333334"><block s="reportNewList"><list><custom-block s="Coordinate Points, X Point: %n Y Point: %n"><l>240</l><l>0</l></custom-block><custom-block s="Coordinate Points, X Point: %n Y Point: %n"><l>0</l><l>100</l></custom-block><custom-block s="Coordinate Points, X Point: %n Y Point: %n"><l>-240</l><l>0</l></custom-block><custom-block s="Coordinate Points, X Point: %n Y Point: %n"><l>0</l><l>-100</l></custom-block><custom-block s="Coordinate Points, X Point: %n Y Point: %n"><l>240</l><l>0</l></custom-block></list><comment w="343.69458128078816" collapsed="false">Step 3: Create a list that stores the necessary Coordinte Points to draw your specified shape </comment></block></script><script x="20" y="736.8333333333334"><block s="reportNewList"><list><custom-block s="Coordinate Points, X Point: %n Y Point: %n"><l>240</l><l>0</l></custom-block><custom-block s="Coordinate Points, X Point: %n Y Point: %n"><l>0</l><l>100</l></custom-block><custom-block s="Coordinate Points, X Point: %n Y Point: %n"><l>-240</l><l>0</l></custom-block><custom-block s="Coordinate Points, X Point: %n Y Point: %n"><l>0</l><l>-100</l></custom-block><custom-block s="Coordinate Points, X Point: %n Y Point: %n"><l>240</l><l>0</l></custom-block></list></block></script><script x="20" y="845.8333333333334"><block s="receiveGo"></block><block s="doSetVar"><l>diamondshape</l><block s="reportNewList"><list><custom-block s="Coordinate Points, X Point: %n Y Point: %n"><l>240</l><l>0</l></custom-block><custom-block s="Coordinate Points, X Point: %n Y Point: %n"><l>0</l><l>100</l></custom-block><custom-block s="Coordinate Points, X Point: %n Y Point: %n"><l>-240</l><l>0</l></custom-block><custom-block s="Coordinate Points, X Point: %n Y Point: %n"><l>0</l><l>-100</l></custom-block><custom-block s="Coordinate Points, X Point: %n Y Point: %n"><l>240</l><l>0</l></custom-block></list></block><comment w="304.2857142857142" collapsed="false">Step 4: Create a Draw Shape Command Block whose domain will be the list of Coordinate Points create in step 3. The command block will draw the shape on the screen by using a the for each item block and the selector blocks created in Step 2.</comment></block><block s="down"></block><block s="clear"></block><custom-block s="Draw Shape From List of Coordinates %l"><block var="diamondshape"/></custom-block><block s="up"></block></script><script x="20" y="1090.1666666666665"><block s="receiveGo"></block><block s="doSetVar"><l>triangleshape</l><block s="reportNewList"><list><custom-block s="Coordinate Points, X Point: %n Y Point: %n"><l>240</l><l>0</l></custom-block><custom-block s="Coordinate Points, X Point: %n Y Point: %n"><l>0</l><l>100</l></custom-block><custom-block s="Coordinate Points, X Point: %n Y Point: %n"><l>-240</l><l>0</l></custom-block><custom-block s="Coordinate Points, X Point: %n Y Point: %n"><l>240</l><l>0</l></custom-block></list></block></block><block s="down"></block><block s="clear"></block><custom-block s="Draw Shape From List of Coordinates %l"><block var="triangleshape"/></custom-block><block s="up"></block></script></scripts></sprite></sprites></stage><variables><variable name="diamondshape"><list id="761"><item><list struct="atomic" id="762">240,0</list></item><item><list struct="atomic" id="763">0,100</list></item><item><list struct="atomic" id="764">-240,0</list></item><item><list struct="atomic" id="765">0,-100</list></item><item><list struct="atomic" id="766">240,0</list></item></list></variable><variable name="triangleshape"><list id="767"><item><list struct="atomic" id="768">240,0</list></item><item><list struct="atomic" id="769">0,100</list></item><item><list struct="atomic" id="770">-240,0</list></item><item><list struct="atomic" id="771">240,0</list></item></list></variable></variables></scene></scenes></project><media name="AbstractDataType Lecture" app="Snap! 11.0.4, https://snap.berkeley.edu" version="2"><costume name="XY Grid" center-x="240" center-y="180" image="data:image/png;base64,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" mediaID="AbstractDataType Lecture_Stage_cst_XY Grid"/></media></snapdata>