<snapdata remixID="9972733"><project name="Lab 3.3 Let Me Check My Calendar" app="Snap! 6, https://snap.berkeley.edu" version="1"><notes></notes><thumbnail>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAAB4CAYAAAB1ovlvAAABxklEQVR4nO3XsY0aURhG0e2KhAAiCCelsEE0wEwj0wdNEJE8p7YsNlr5yrvnSC//giv9eh8DQh/1AH42AZISICkBkhIgKQGSEiApAZISICkBkhIgKQGSEiApAZISICkBkhIgKQGSEiApAZISICkBkhIgKQGSEiApAZISICkBkhIgKQGSEiApAZISICkBkhIgKQGSEiApAZISICkBkhIgKQGSEiApAZISICkBkhIgKQGSEiApAZISICkBkhIgKQGSEiApAZIS4BvLsozb7TYej0c95VsT4BvP53NcLpcxTdPY7XZjnucxz/N4vV71tG9FgJ/Ytm0cj8cxTdMf73Q6jXVdx7qu9cT/ngA/sW3bOBwOfwV4Pp/HsiwC/AICfOP3E7zf78c8z+N6vTrBX0yAb9zvd5+Qf0CApARISoCkBEhKgKQESEqApARISoCkBEhKgKQESEqApARISoCkBEhKgKQESEqApARISoCkBEhKgKQESEqApARISoCkBEhKgKQESEqApARISoCkBEhKgKQESEqApARISoCkBEhKgKQESEqApARISoCkBEhKgKQESEqApARISoCkBEhKgKQESEqApARISoCkfgFv9q+PXBsquwAAAABJRU5ErkJggg==</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,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAACtUlEQVR4nO3BMQEAAADCoPVPbQwfoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+Bo3+AAF/RMkcAAAAAElFTkSuQmCC</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="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="8"><costumes><list struct="atomic" id="9"></list></costumes><sounds><list struct="atomic" id="10"></list></sounds><blocks></blocks><variables></variables><scripts><script x="76.93975903614455" y="10"><custom-block s="Month name %s"><l></l></custom-block></script><script x="76.93975903614455" y="66"><custom-block s="Day name %s"><l></l></custom-block></script><script x="75.77108433734941" y="124.26506024096398"><custom-block s="Days in month %s"><l></l></custom-block></script><script x="83.15662650602405" y="195.68674698795215"><custom-block s="Is leap year %s"><l></l></custom-block></script><script x="85.566265060241" y="332.89156626506065"><custom-block s="Is %s a valid day in %s month?"><l></l><l></l></custom-block></script><script x="85.57831325301208" y="391.26104417670774"><custom-block s="Day number %s"><l></l></custom-block></script><script x="82.15662650602405" y="240.68674698795215"><custom-block s="Is leap year %s"><l></l></custom-block></script></scripts></sprite><watcher var="num" style="normal" x="10" y="10" color="243,118,29" hidden="true"/></sprites></stage><hidden></hidden><headers></headers><code></code><blocks><block-definition s="Month name %&apos;num&apos;" type="command" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doIfElse"><block s="reportEquals"><block var="num"/><l>1</l></block><script><block s="doSayFor"><l>It&apos;s January!</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="num"/><l>2</l></block><script><block s="doSayFor"><l>It&apos;s February!</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="num"/><l>3</l></block><script><block s="doSayFor"><l>It&apos;s March!</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="num"/><l>4</l></block><script><block s="doSayFor"><l>It&apos;s April!</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="num"/><l>5</l></block><script><block s="doSayFor"><l>It&apos;s May!</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="num"/><l>6</l></block><script><block s="doSayFor"><l>It&apos;s June!</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="num"/><l>7</l></block><script><block s="doSayFor"><l>It&apos;s July!</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="num"/><l>8</l></block><script><block s="doSayFor"><l>It&apos;s August!</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="num"/><l>9</l></block><script><block s="doSayFor"><l>It&apos;s September!</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="num"/><l>10</l></block><script><block s="doSayFor"><l>It&apos;s October!</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="num"/><l>11</l></block><script><block s="doSayFor"><l>It&apos;s November!</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="num"/><l>12</l></block><script><block s="doSayFor"><l>It&apos;s December!</l><l>2</l></block></script><script><block s="doSayFor"><l>Invalid entry! Number must be between 1 to 12.</l><l>2</l></block></script></block></script></block></script></block></script></block></script></block></script></block></script></block></script></block></script></block></script></block></script></block></script></block></script></block-definition><block-definition s="Days in month %&apos;month&apos;" type="command" category="operators"><comment w="90.00000000000001" collapsed="true">This should do some of the work for Months with 31 days. You need to complete the rest, and then handle Months with 30 days and 28 days. &#xD;&#xD;The Tips section on the guide should have the days for each Month. </comment><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doIf"><block s="reportOr"><block s="reportEquals"><block var="month"/><l>January</l></block><block s="reportOr"><block s="reportEquals"><block var="month"/><l>March</l></block><block s="reportOr"><block s="reportEquals"><block var="month"/><l>May</l></block><block s="reportOr"><block s="reportEquals"><block var="month"/><l>July</l></block><block s="reportOr"><block s="reportEquals"><block var="month"/><l>August</l></block><block s="reportOr"><block s="reportEquals"><block var="month"/><l>October</l></block><block s="reportEquals"><block var="month"/><l>December</l></block></block></block></block></block></block></block><script><block s="doSayFor"><l>31 days!</l><l>2</l></block></script></block><block s="doIf"><block s="reportOr"><block s="reportEquals"><block var="month"/><l>April</l></block><block s="reportOr"><block s="reportEquals"><block var="month"/><l>June</l></block><block s="reportOr"><block s="reportEquals"><block var="month"/><l>September</l></block><block s="reportEquals"><block var="month"/><l>November</l></block></block></block></block><script><block s="doSayFor"><l>30 days!</l><l>2</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="month"/><l>February</l></block><script><block s="doSayFor"><l>28 days!</l><l>2</l></block></script></block></script></block-definition><block-definition s="Is leap year %&apos;year&apos;" type="command" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doIfElse"><block s="reportNot"><block s="reportEquals"><block s="reportModulus"><block var="year"/><l>4</l></block><l>0</l></block></block><script><block s="doSayFor"><l>Common year</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportNot"><block s="reportEquals"><block s="reportModulus"><block var="year"/><l>100</l></block><l>0</l></block></block><script><block s="doSayFor"><l>Leap year</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportNot"><block s="reportEquals"><block s="reportModulus"><block var="year"/><l>400</l></block><l>0</l></block></block><script><block s="doSayFor"><l>Common year</l><l>2</l></block></script><script><block s="doSayFor"><l>Leap year</l><l>2</l></block></script></block></script></block></script></block></script></block-definition><block-definition s="Is %&apos;day&apos; a valid day in %&apos;month&apos; month?" type="command" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input></inputs><script><block s="doIf"><block s="reportGreaterThan"><block var="day"/><l>31</l></block><script><block s="doSayFor"><l>Not a valid date for any month!</l><l>2</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="month"/><l>February</l></block><script><block s="doIfElse"><block s="reportLessThan"><block var="day"/><l>29</l></block><script><block s="doSayFor"><l>Valid</l><l>2</l></block></script><script><block s="doSayFor"><l>Not valid</l><l>2</l></block></script></block></script></block><block s="doIf"><block s="reportOr"><block s="reportEquals"><block var="month"/><l>April</l></block><block s="reportOr"><block s="reportEquals"><block var="month"/><l>June</l></block><block s="reportOr"><block s="reportEquals"><block var="month"/><l>September</l></block><block s="reportEquals"><block var="month"/><l>November</l></block></block></block></block><script><block s="doIfElse"><block s="reportLessThan"><block var="day"/><l>31</l></block><script><block s="doSayFor"><l>Valid</l><l>2</l></block></script><script><block s="doSayFor"><l>Not valid</l><l>2</l></block></script></block></script></block><block s="doIf"><block s="reportOr"><block s="reportOr"><block s="reportOr"><block s="reportOr"><block s="reportOr"><block s="reportOr"><block s="reportEquals"><block var="month"/><l>January</l></block><block s="reportEquals"><block var="month"/><l>March</l></block></block><block s="reportEquals"><block var="month"/><l>May</l></block></block><block s="reportEquals"><block var="month"/><l>July</l></block></block><block s="reportEquals"><block var="month"/><l>August</l></block></block><block s="reportEquals"><block var="month"/><l>October</l></block></block><block s="reportEquals"><block var="month"/><l>December</l></block></block><script><block s="doIfElse"><block s="reportLessThan"><block var="day"/><l>32</l></block><script><block s="doSayFor"><l>Valid</l><l>2</l></block></script><script></script></block></script></block></script></block-definition><block-definition s="Day number %&apos;day&apos;" type="command" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doIfElse"><block s="reportLessThan"><block var="day"/><l>32</l></block><script><block s="doSayFor"><l>January!</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportLessThan"><block var="day"/><l>60</l></block><script><block s="doSayFor"><l>February!</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportLessThan"><block var="day"/><l>91</l></block><script><block s="doSayFor"><l>March!</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportLessThan"><block var="day"/><l>121</l></block><script><block s="doSayFor"><l>April!</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportLessThan"><block var="day"/><l>152</l></block><script><block s="doSayFor"><l>May!</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportLessThan"><block var="day"/><l>182</l></block><script><block s="doSayFor"><l>June!</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportLessThan"><block var="day"/><l>213</l></block><script><block s="doSayFor"><l>July!</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportLessThan"><block var="day"/><l>244</l></block><script><block s="doSayFor"><l>August!</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportLessThan"><block var="day"/><l>274</l></block><script><block s="doSayFor"><l>September!</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportLessThan"><block var="day"/><l>305</l></block><script><block s="doSayFor"><l>October!</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportLessThan"><block var="day"/><l>335</l></block><script><block s="doSayFor"><l>November!</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportLessThan"><block var="day"/><l>366</l></block><script><block s="doSayFor"><l>December!</l><l>2</l></block></script><script><block s="doSayFor"><l>Error! This is only for non-leap years!</l><l>2</l></block></script></block></script></block></script></block></script></block></script></block></script></block></script></block></script></block></script></block></script></block></script></block></script></block></script><scripts><comment x="349" y="95.66666666666669" w="102" collapsed="false">These assume no leap year. Check Tips for some neat tips on &quot;reusing&quot; your leap year block to help with this!</comment></scripts></block-definition><block-definition s="Day name %&apos;num&apos;" type="command" category="operators"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doIfElse"><block s="reportEquals"><block var="num"/><l>1</l></block><script><block s="doSayFor"><l>It&apos;s Sunday!</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="num"/><l>2</l></block><script><block s="doSayFor"><l>It&apos;s Monday!</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="num"/><l>3</l></block><script><block s="doSayFor"><l>It&apos;s Tuesday!</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="num"/><l>4</l></block><script><block s="doSayFor"><l>It&apos;s Wednesday!</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="num"/><l>5</l></block><script><block s="doSayFor"><l>It&apos;s Thursday!</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="num"/><l>6</l></block><script><block s="doSayFor"><l>It&apos;s Friday!</l><l>2</l></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="num"/><l>7</l></block><script><block s="doSayFor"><l>It&apos;s Saturday!</l><l>2</l></block></script><script><block s="doSayFor"><l>Invalid entry! Number must be between 1 to 7.</l><l>2</l></block></script></block></script></block></script></block></script></block></script></block></script></block></script></block></script></block-definition></blocks><variables><variable name="num"><l>0</l></variable></variables></project><media name="Lab 3.3 Let Me Check My Calendar" app="Snap! 6, https://snap.berkeley.edu" version="1"></media></snapdata>