<snapdata remixID="14973844"><project name="U4L2p2-CaesarCipher" app="Snap! 11.0.8, https://snap.berkeley.edu" version="2"><notes></notes><thumbnail>data:image/png;base64,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</thumbnail><scenes select="1"><scene name="U4L2p2-CaesarCipher"><notes></notes><hidden></hidden><headers></headers><code></code><blocks><block-definition s="Encode %&apos;text&apos; %&apos;shift&apos;" type="reporter" category="other"><header></header><code></code><translations></translations><inputs><input type="%txt"></input><input type="%n"></input></inputs><script><block s="doDeclareVariables"><list><l>encodedText</l></list></block><block s="doSetVar"><l>encodedText</l><l></l></block><custom-block s="for %upvar = %n to %n %cs"><l>i</l><l>1</l><block s="reportTextAttribute"><l><option>length</option></l><block var="text"/></block><script><block s="doSetVar"><l>encodedText</l><block s="reportJoinWords"><list><block var="encodedText"/><custom-block s="Encode One Character %s %n"><block s="reportLetter"><block var="i"/><block var="text"/></block><block var="shift"/></custom-block></list></block></block></script></custom-block><block s="doReport"><block var="encodedText"/></block></script><scripts><script x="17.599999999999984" y="257.8"><block s="doReport"><custom-block s="list $arrowRight word %l"><block s="reportMap"><block s="reifyReporter"><autolambda><custom-block s="Encode One Character %s %n"><l></l><block var="shift"/></custom-block></autolambda><list></list></block><block s="reportTextSplit"><block var="text"/><l><option>letter</option></l></block></block></custom-block><comment w="90" collapsed="false">A more clever approach to this problem can be achieved using the higher order function (HOF) map.  Courtesy of Christopher Archie of teacher cohort 17-18. </comment></block></script></scripts></block-definition><block-definition s="for %&apos;i&apos; = %&apos;start&apos; to %&apos;end&apos; %&apos;action&apos;" type="command" category="control"><header></header><code></code><translations></translations><inputs><input type="%upvar"></input><input type="%n">1</input><input type="%n">10</input><input type="%cs"></input></inputs><script><block s="doDeclareVariables"><list><l>step</l><l>tester</l></list></block><block s="doIfElse"><block s="reportVariadicGreaterThan"><list><block var="start"/><block var="end"/></list></block><script><block s="doSetVar"><l>step</l><l>-1</l></block><block s="doSetVar"><l>tester</l><block s="reifyReporter"><autolambda><block s="reportVariadicLessThan"><list><block var="i"/><block var="end"/></list></block></autolambda><list></list></block></block></script><script><block s="doSetVar"><l>step</l><l>1</l></block><block s="doSetVar"><l>tester</l><block s="reifyReporter"><autolambda><block s="reportVariadicGreaterThan"><list><block var="i"/><block var="end"/></list></block></autolambda><list></list></block></block></script></block><block s="doSetVar"><l>i</l><block var="start"/></block><block s="doUntil"><block s="evaluate"><block var="tester"/><list></list></block><script><block s="doRun"><block var="action"/><list></list></block><block s="doChangeVar"><l>i</l><block var="step"/></block></script></block></script></block-definition><block-definition s="list $arrowRight word %&apos;list&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%l"></input></inputs><script><block s="doWarp"><script><block s="doReport"><block s="reportJoinWords"><block var="list"/></block></block></script></block></script></block-definition><block-definition s="Encode One Character %&apos;char&apos; %&apos;shift&apos;" type="reporter" category="other"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%n"></input></inputs><script><block s="doReport"><block s="reportUnicodeAsLetter"><block s="reportVariadicSum"><list><block s="reportUnicode"><block var="char"/></block><block var="shift"/></list></block></block></block></script></block-definition><block-definition s="Encode One Character (TIF A version) %&apos;char&apos; %&apos;shift&apos;" type="reporter" category="other"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%n"></input></inputs><script><block s="doDeclareVariables"><list><l>new character</l></list></block><block s="doSetVar"><l>new character</l><block s="reportVariadicSum"><list><block s="reportUnicode"><block var="char"/></block><block var="shift"/></list></block></block><block s="doIf"><block s="reportVariadicGreaterThan"><list><block var="new character"/><l>126</l></list></block><script><block s="doChangeVar"><l>new character</l><block s="reportDifference"><l>32</l><l>127</l></block></block></script><list></list></block><block s="doIf"><block s="reportVariadicLessThan"><list><block var="new character"/><l>32</l></list></block><script><block s="doChangeVar"><l>new character</l><block s="reportDifference"><l>127</l><l>32</l></block></block></script><list></list></block><block s="doReport"><block s="reportUnicodeAsLetter"><block var="new character"/></block></block></script></block-definition><block-definition s="Encode (TIF A version) %&apos;text&apos; %&apos;shift&apos;" type="reporter" category="other"><header></header><code></code><translations></translations><inputs><input type="%txt"></input><input type="%n"></input></inputs><script><block s="doDeclareVariables"><list><l>encodedText</l></list></block><block s="doSetVar"><l>encodedText</l><l></l></block><custom-block s="for %upvar = %n to %n %cs"><l>i</l><l>1</l><block s="reportTextAttribute"><l><option>length</option></l><block var="text"/></block><script><block s="doSetVar"><l>encodedText</l><block s="reportJoinWords"><list><block var="encodedText"/><custom-block s="Encode One Character (TIF A version) %s %n"><block s="reportLetter"><block var="i"/><block var="text"/></block><block var="shift"/></custom-block></list></block></block></script></custom-block><block s="doReport"><block var="encodedText"/></block></script><scripts><script x="17.599999999999984" y="257.8"><block s="doReport"><custom-block s="list $arrowRight word %l"><block s="reportMap"><block s="reifyReporter"><autolambda><custom-block s="Encode One Character %s %n"><l></l><block var="shift"/></custom-block></autolambda><list></list></block><block s="reportTextSplit"><block var="text"/><l><option>letter</option></l></block></block></custom-block><comment w="90" collapsed="false">A more clever approach to this problem can be achieved using the higher order function (HOF) map.  Courtesy of Christopher Archie of teacher cohort 17-18. </comment></block></script></scripts></block-definition><block-definition s="initials from name %&apos;name&apos;" type="reporter" category="operators"><comment x="0" y="0" w="79.33333333333333" collapsed="true">4.2.2 ITIT 5</comment><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doReport"><block s="reportCombine"><block s="reportKeep"><block s="reifyPredicate"><autolambda><custom-block s="is %s between %s and %s ?"><block s="reportUnicode"><l></l></block><block s="reportUnicode"><l>A</l></block><block s="reportUnicode"><l>Z</l></block></custom-block></autolambda><list></list></block><block s="reportTextSplit"><block var="name"/><l><option>letter</option></l></block></block><block s="reifyReporter"><autolambda><block s="reportJoinWords"><list><l></l><l></l></list></block></autolambda><list></list></block></block><comment w="238" collapsed="false">Version using UNICODE block.&#xD;Treats the name as just a string of characters and searches for capital letters in it.  So if the name were &quot;BeAuTy and jOy of computiNg&quot; the block would report BATON. </comment></block></script><scripts><script x="14.666666666666666" y="190.88888888888889"><block s="doReport"><block s="reportCombine"><block s="reportMap"><block s="reifyReporter"><autolambda><block s="reportLetter"><l>1</l><l></l></block></autolambda><list></list></block><block s="reportCombine"><block s="reportMap"><block s="reifyReporter"><autolambda><block s="reportTextSplit"><l></l><l>-</l></block></autolambda><list></list></block><block s="reportTextSplit"><block var="name"/><l><option>word</option></l></block></block><block s="reifyReporter"><autolambda><block s="reportConcatenatedLists"><list><l/><l/></list></block></autolambda><list></list></block></block></block><block s="reifyReporter"><autolambda><block s="reportJoinWords"><list><l></l><l></l></list></block></autolambda><list></list></block><comment w="243.33333333333334" collapsed="false">Version using an additional SPLIT block.&#xD;This version respects the abstraction that text is made up of words, not characters.  It introduces hyphens as another word delimiter (in addition to spaces).  It has an unfortunately hairy structure of higher order function calls. because the split by hyphens has to be done in each word separately (that&apos;s the inner MAP) and then the result has to be flattened (the APPEND).  The ideal solution would split into words based on spaces and hyphens together, but Snap! doesn&apos;t have that capability (yet).</comment></block></block></script></scripts></block-definition><block-definition s="%&apos;a&apos; ≤ %&apos;b&apos;" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input></inputs><script><block s="doReport"><block s="reportVariadicOr"><list><block s="reportVariadicLessThan"><list><block var="a"/><block var="b"/></list></block><block s="reportVariadicEquals"><list><block var="a"/><block var="b"/></list></block></list></block></block></script></block-definition><block-definition s="%&apos;a&apos; ≥ %&apos;b&apos;" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input></inputs><script><block s="doReport"><block s="reportVariadicOr"><list><block s="reportVariadicGreaterThan"><list><block var="a"/><block var="b"/></list></block><block s="reportVariadicEquals"><list><block var="a"/><block var="b"/></list></block></list></block></block></script></block-definition><block-definition s="is %&apos;mid&apos; between %&apos;low&apos; and %&apos;high&apos; ?" type="predicate" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input><input type="%s"></input></inputs><script><block s="doReport"><block s="reportVariadicAnd"><list><custom-block s="%s ≥ %s"><block var="mid"/><block var="low"/></custom-block><custom-block s="%s ≤ %s"><block var="mid"/><block var="high"/></custom-block></list></block></block></script><scripts><comment x="14.666666666666666" y="88.8" w="304.6666666666667" collapsed="false">As the lab says, it&apos;s okay to use &quot;&gt;&quot; and &quot;&lt;&quot; instead of &quot;≥&quot; and &quot;≤.&quot;</comment></scripts></block-definition></blocks><primitives></primitives><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="true" hyperops="true" codify="false" inheritance="false" sublistIDs="false" id="399"><pentrails>data:image/png;base64,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</pentrails><costumes><list struct="atomic" id="400"></list></costumes><sounds><list struct="atomic" id="401"></list></sounds><variables></variables><blocks></blocks><scripts></scripts><sprites select="1"><sprite name="Sprite" idx="1" x="150" y="50" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" costume="1" color="80,80,80,1" pen="tip" id="406"><costumes><list id="407"><item><ref mediaID="U4L2p2-CaesarCipher_Sprite_cst_Caesar2"></ref></item></list></costumes><sounds><list struct="atomic" id="408"></list></sounds><blocks></blocks><variables></variables><scripts><script x="669" y="57.666666666666686"><block s="receiveGo"></block><block s="doSetVar"><l>inputText</l><l></l></block><block s="doSetVar"><l>shiftValue</l><l></l></block><block s="doSetVar"><l>outputText</l><l></l></block><block s="gotoXY"><l>150</l><l>50</l></block><block s="doAsk"><l>Enter your text:</l></block><block s="doSetVar"><l>inputText</l><block s="getLastAnswer"></block></block><block s="doUntil"><block s="reportIsA"><block s="getLastAnswer"></block><l><option>number</option></l></block><script><block s="doAsk"><l>What is the Shift Value for the Ceasar Cipher?  Enter a whole number.</l></block><block s="doSetVar"><l>shiftValue</l><block s="getLastAnswer"></block></block></script></block><block s="doAsk"><l>Encipher or Decipher?</l></block><block s="doIf"><block s="reportVariadicEquals"><list><block s="reportLetter"><l>1</l><block s="getLastAnswer"></block></block><l>D</l></list></block><script><block s="doSetVar"><l>shiftValue</l><block s="reportDifference"><l>0</l><block var="shiftValue"/></block></block></script><list></list><comment w="90" collapsed="false">This part here asks if you want to decipher or encipher by seeing if you answer starts with a D or not. If the answer starts with D then the script runs the calculation in the loop and if it doesn&apos;t start with a D it runs the custom reporter block. </comment></block><block s="doSetVar"><l>outputText</l><block s="reportNewList"><list><custom-block s="Encode %txt %n"><block var="inputText"/><block var="shiftValue"/></custom-block></list></block></block></script><comment x="951" y="50" w="90" collapsed="false">This part of the code is simple. It starts when the green flag is clicked and resets all variables to nothing and goes to default position. Then it asks for an answer and keeps asking until the answer is a number.</comment><comment x="538.4224609375001" y="359.08333333333337" w="90" collapsed="false">The custom block here shows 2 methods to encipher. The 1st method uses a for loop which creates a variable and sets it as nothing. Then it counts the total length of the text. The join block is used to attach the new character to the end of the variable it created.</comment><script x="938" y="587.2222222222222"><custom-block s="initials from name %s"><l></l><comment w="178" collapsed="true">4.2.2 ITIT 5 (two versions inside)</comment></custom-block></script><script x="548.5406921041666" y="641.0000030000001"><custom-block s="Encode (TIF A version) %txt %n"><block var="inputText"/><block var="shiftValue"/><comment w="90" collapsed="false">From what I understand the difference between the standard and TIF A version is that the TIF A version wraps around the alphabet instead of moving to the next character.</comment></custom-block></script><script x="1069.3333333333335" y="634.6666756666668"><custom-block s="Encode One Character (TIF A version) %s %n"><l></l><l></l><comment w="177.33333333333334" collapsed="true">The real change is in here.</comment></custom-block></script><comment x="1203" y="662" w="90" collapsed="false">This custom block shows how a single character is enciphered compared to the other ones where the whole text is enciphered, This helps me understand the process and basics of how it works.</comment><comment x="1451" y="71" w="90" collapsed="false">Using and testing out the cipher is what really helps me sort of understand how it works. And the more unique words I use to encipher and decipher the cooler and more intriguing it gets. The more complex code in the custom blocks is still really confusing to me.</comment><comment x="1575" y="106" w="90" collapsed="false">I like using hello and khoor to encipher and decipher because it is very simple.</comment></scripts></sprite><watcher var="shiftValue" style="normal" x="1" y="50.999999999999986" color="243,118,29"/><watcher var="inputText" style="normal" x="1.3333333333330302" y="6.611111111111114" color="243,118,29"/><watcher var="outputText" style="normal" x="8.361111111111313" y="98.61111161111114" color="243,118,29" extX="80" extY="70"/></sprites></stage><variables><variable name="outputText"><list struct="atomic" id="490">hello</list></variable><variable name="inputText"><l>khoor</l></variable><variable name="shiftValue"><l>-3</l></variable></variables></scene></scenes></project><media name="U4L2p2-CaesarCipher" app="Snap! 11.0.8, https://snap.berkeley.edu" version="2"><costume name="Caesar2" center-x="8" center-y="5.75" image="data:image/png;base64,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" mediaID="U4L2p2-CaesarCipher_Sprite_cst_Caesar2"/></media></snapdata>