<snapdata remixID="12211059"><project name="U4L6 UPC Code Checker" app="Snap! 7, https://snap.berkeley.edu" version="2"><notes></notes><thumbnail>data:image/png;base64,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</thumbnail><scenes select="1"><scene name="U4L6 UPC Code Checker"><notes></notes><hidden></hidden><headers></headers><code></code><blocks><block-definition s="enoughDigits?" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><block s="reportEquals"><block s="reportListAttribute"><l><option>length</option></l><block var="UPCCode"/></block><l>12</l></block></block></script></block-definition><block-definition s="allDigitsButTheCheckDigit" type="reporter" category="variables"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><block s="reportDifference"><block s="reportListAttribute"><l><option>length</option></l><block var="UPCCode"/></block><l>1</l></block></block></script></block-definition><block-definition s="sumEvenDigits" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doDeclareVariables"><list><l>sum</l><l>i</l></list></block><block s="doSetVar"><l>sum</l><l>0</l></block><block s="doSetVar"><l>i</l><l>1</l></block><block s="doRepeat"><custom-block s="allDigitsButTheCheckDigit"></custom-block><script><block s="doIf"><block s="reportEquals"><block s="reportModulus"><block var="i"/><l>2</l></block><l>0</l></block><script><block s="doSetVar"><l>sum</l><block s="reportVariadicSum"><list><block var="sum"/><block s="reportListItem"><block var="i"/><block var="UPCCode"/></block></list></block></block></script></block><block s="doChangeVar"><l>i</l><l>1</l></block></script></block><block s="doReport"><block var="sum"/></block></script></block-definition><block-definition s="sumOddDigits" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doDeclareVariables"><list><l>sum</l><l>i</l></list></block><block s="doSetVar"><l>sum</l><l>0</l></block><block s="doSetVar"><l>i</l><l>1</l></block><block s="doRepeat"><custom-block s="allDigitsButTheCheckDigit"></custom-block><script><block s="doIf"><block s="reportEquals"><block s="reportModulus"><block var="i"/><l>2</l></block><l>1</l></block><script><block s="doSetVar"><l>sum</l><block s="reportVariadicSum"><list><block var="sum"/><block s="reportListItem"><block var="i"/><block var="UPCCode"/></block></list></block></block></script></block><block s="doChangeVar"><l>i</l><l>1</l></block></script></block><block s="doReport"><block var="sum"/></block></script></block-definition><block-definition s="checkDigit" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><block s="reportListItem"><l>12</l><block var="UPCCode"/></block></block></script></block-definition><block-definition s="oddDigits*3" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doReport"><block s="reportVariadicProduct"><list><custom-block s="sumOddDigits"></custom-block><l>3</l></list></block></block></script></block-definition><block-definition s="CollectAndStoreUPC" type="command" category="variables"><header></header><code></code><translations></translations><inputs></inputs></block-definition><block-definition s="CollectAndStoreUPCCode" type="command" category="other"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doDeclareVariables"><list><l>code</l><l>i</l></list></block><block s="doAsk"><l>Enter a UPC Code</l></block><block s="doSetVar"><l>code</l><block s="getLastAnswer"></block></block><block s="doSetVar"><l>i</l><l>1</l></block><block s="doRepeat"><block s="reportStringSize"><block var="code"/></block><script><block s="doAddToList"><block s="reportLetter"><block var="i"/><block var="code"/></block><block var="UPCCode"/></block><block s="doChangeVar"><l>i</l><l>1</l></block></script></block></script></block-definition><block-definition s="regularUPCCheckDigit" type="command" category="variables"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doIf"><block s="reportEquals"><block s="reportListItem"><l>1</l><block var="UPCCode"/></block><l>0</l></block><script><block s="doAddToList"><block var="UPCCode"/><block var="UPCType"/></block><block s="doSayFor"><l>This UPC type is regular</l><l>2</l></block></script></block><block s="doIf"><block s="reportEquals"><block s="reportListItem"><l>1</l><block var="UPCCode"/></block><l>1</l></block><script><block s="doAddToList"><block var="UPCCode"/><block var="UPCType"/></block><block s="doSayFor"><l>This UPC type is regular</l><l>2</l></block></script></block><block s="doIf"><block s="reportEquals"><block s="reportListItem"><l>1</l><block var="UPCCode"/></block><l>6</l></block><script><block s="doAddToList"><block var="UPCCode"/><block var="UPCType"/></block><block s="doSayFor"><l>This UPC type is regular</l><l>2</l></block></script></block><block s="doIf"><block s="reportEquals"><block s="reportListItem"><l>1</l><block var="UPCCode"/></block><l>7</l></block><script><block s="doAddToList"><block var="UPCCode"/><block var="UPCType"/></block><block s="doSayFor"><l>This UPC type is regular</l><l>2</l></block></script></block><block s="doIf"><block s="reportEquals"><block s="reportListItem"><l>1</l><block var="UPCCode"/></block><l>8</l></block><script><block s="doAddToList"><block var="UPCCode"/><block var="UPCType"/></block><block s="doSayFor"><l>This UPC type is regular</l><l>2</l></block></script></block></script></block-definition><block-definition s="randWeightCheckDigit" type="command" category="variables"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doIf"><block s="reportEquals"><block s="reportListItem"><l>1</l><block var="UPCCode"/></block><l>2</l></block><script><block s="doAddToList"><block var="UPCCode"/><block var="UPCType"/></block><block s="doSayFor"><l>This UPC type is random weight</l><l>2</l></block></script></block></script></block-definition><block-definition s="healthUPCCheckDigit" type="command" category="variables"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doIf"><block s="reportEquals"><block s="reportListItem"><l>1</l><block var="UPCCode"/></block><l>3</l></block><script><block s="doAddToList"><block var="UPCCode"/><block var="UPCType"/></block><block s="doSayFor"><l>This UPC type is health</l><l>2</l></block></script></block></script></block-definition><block-definition s="InStoreNonFoodUPCCheckDigit" type="command" category="variables"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doIf"><block s="reportEquals"><block s="reportListItem"><l>1</l><block var="UPCCode"/></block><l>4</l></block><script><block s="doAddToList"><block var="UPCCode"/><block var="UPCType"/></block><block s="doSayFor"><l>This UPC type is for non food instore items</l><l>2</l></block></script></block></script></block-definition><block-definition s="CouponUPCCheckDigit" type="command" category="variables"><header></header><code></code><translations></translations><inputs></inputs><script><block s="doIf"><block s="reportEquals"><block s="reportListItem"><l>1</l><block var="UPCCode"/></block><l>5</l></block><script><block s="doAddToList"><block var="UPCCode"/><block var="UPCType"/></block><block s="doSayFor"><l>This UPC type is for coupons</l><l>2</l></block></script></block><block s="doIf"><block s="reportEquals"><block s="reportListItem"><l>1</l><block var="UPCCode"/></block><l>9</l></block><script><block s="doAddToList"><block var="UPCCode"/><block var="UPCType"/></block><block s="doSayFor"><l>This UPC type is for coupons</l><l>2</l></block></script></block></script></block-definition></blocks><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" id="332"><pentrails>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAAAXNSR0IArs4c6QAADoVJREFUeF7t1cEJAAAIxDDdf2m3sJ+4wEEQuuMIECBAgACBd4F9XzRIgAABAgQIjAB7AgIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+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+wECBAgQIBAICHCAbpIAAQIECAiwHyBAgAABAoGAAAfoJgkQIECAgAD7AQIECBAgEAgIcIBukgABAgQICLAfIECAAAECgYAAB+gmCRAgQICAAPsBAgQIECAQCAhwgG6SAAECBAgIsB8gQIAAAQKBgAAH6CYJECBAgIAA+wECBAgQIBAICHCAbpIAAQIECByxcQFpoRMBzwAAAABJRU5ErkJggg==</pentrails><costumes><list struct="atomic" id="333"></list></costumes><sounds><list struct="atomic" id="334"></list></sounds><variables></variables><blocks></blocks><scripts></scripts><sprites select="1"><sprite name="Harry" idx="1" x="0" y="0" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="0" color="80,80,80,1" pen="tip" id="339"><costumes><list struct="atomic" id="340"></list></costumes><sounds><list struct="atomic" id="341"></list></sounds><blocks></blocks><variables></variables><scripts><script x="30" y="18.33333333333337"><block s="receiveGo"></block><block s="doSetVar"><l>UPCCode</l><block s="reportNewList"><list></list></block><comment w="90" collapsed="false">makes list of upc code and upc types</comment></block><block s="doSetVar"><l>UPCType</l><block s="reportNewList"><list></list></block></block><custom-block s="CollectAndStoreUPCCode"><comment w="90" collapsed="false">asks user for thier UPC input and then stores it in list</comment></custom-block><block s="doIf"><block s="reportNot"><custom-block s="enoughDigits?"></custom-block></block><script><block s="doSayFor"><l>That code is invalid, it is not enough digits</l><l>2</l></block><block s="doStopThis"><l><option>all</option></l></block></script><comment w="90" collapsed="false">if the UPC code is too short the UPC is in valid and program stops </comment></block><block s="doIfElse"><block s="reportEquals"><block s="reportModulus"><block s="reportVariadicSum"><list><custom-block s="oddDigits*3"></custom-block><custom-block s="sumEvenDigits"></custom-block><custom-block s="checkDigit"></custom-block></list></block><l>10</l><comment w="90" collapsed="false">add up oddnum*3 evennum and check digit-if divides into 10 then UPC is valid</comment></block><l>0</l></block><script><block s="doSayFor"><l>This is a valid UPC number!</l><l>2</l></block></script><script><block s="doSayFor"><l>I am sorry this is not a valid number </l><l>2</l></block></script></block><custom-block s="regularUPCCheckDigit"><comment w="232" collapsed="false">makes list of all regular numbers and if the first number in UPC = any of those numbers the list is a regular UPC</comment></custom-block><custom-block s="randWeightCheckDigit"></custom-block><custom-block s="healthUPCCheckDigit"></custom-block><custom-block s="InStoreNonFoodUPCCheckDigit"></custom-block><custom-block s="CouponUPCCheckDigit"></custom-block></script><script x="605" y="185.83333333333348"><custom-block s="sumOddDigits"><comment w="301" collapsed="false">goes through list of values in UPC and if the value is mod 2 = 0 then the value is odd and the number will be added1</comment></custom-block></script><script x="600" y="90.00000000000014"><custom-block s="sumEvenDigits"><comment w="288" collapsed="false">goes through list of values in UPC and if the value is mod 2 = 0 then the value is even and the number will be added </comment></custom-block></script><script x="598" y="16.16666666666677"><custom-block s="enoughDigits?"><comment w="90" collapsed="false">finds length of code by checking list length </comment></custom-block></script><script x="608" y="282.66666666666686"><custom-block s="checkDigit"><comment w="170" collapsed="false">finds last digit of UPC (check digit) </comment></custom-block></script><script x="605" y="368.5000000000002"><custom-block s="oddDigits*3"><comment w="90" collapsed="false">multiplys odd values by 3.</comment></custom-block></script></scripts></sprite><watcher var="UPCCode" style="normal" x="10" y="10" color="243,118,29" extX="80" extY="70"/><watcher var="UPCType" style="normal" x="9" y="111.000002" color="243,118,29" extX="80" extY="70"/></sprites></stage><variables><variable name="UPCCode"><list struct="atomic" id="411">8,8,6,9,5,4,2,6,2,0,3,5</list></variable><variable name="UPCType"><list id="412"><item><ref id="411"></ref></item></list></variable></variables></scene></scenes></project><media name="U4L6 UPC Code Checker" app="Snap! 7, https://snap.berkeley.edu" version="2"></media></snapdata>