<snapdata remixID="8893782"><project name="Lab 3.3" app="Snap! 5.1, http://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" volume="100" pan="0" lines="round" ternary="false" 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="54" y="16"><block s="receiveGo"></block><block s="doDeclareVariables"><list><l>month</l><l>day</l><l>date</l><l>year</l></list></block><block s="doAsk"><l>Give me a day of the week number ( 1- 7)</l></block><block s="doSetVar"><l>day</l><block s="getLastAnswer"></block></block><block s="doSayFor"><block s="reportJoinWords"><list><l>Day number </l><block var="day"/><l> is </l><custom-block s="day name %s"><block var="day"/></custom-block></list></block><l>2</l></block><block s="doAsk"><l>Give me a month number (1 - 12)</l></block><block s="doSetVar"><l>month</l><block s="getLastAnswer"></block></block><block s="doSayFor"><block s="reportJoinWords"><list><l>Month number </l><block var="month"/><l> is </l><custom-block s="month name %s"><block var="month"/></custom-block></list></block><l>2</l></block><block s="doSayFor"><block s="reportJoinWords"><list><l>There are </l><custom-block s="days in %s"><block var="month"/></custom-block><l> days in </l><custom-block s="month name %s"><block var="month"/></custom-block></list></block><l>2</l></block><block s="doAsk"><l>Give me a day of the month (1-28/30/31 depending on month).</l></block><block s="doSetVar"><l>day</l><block s="getLastAnswer"></block></block><block s="doSetVar"><l>date</l><block s="reportJoinWords"><list><block var="month"/><l>/</l><block var="day"/></list></block></block><block s="doIfElse"><custom-block s="is valid date %s %s"><block var="month"/><block var="day"/></custom-block><script><block s="doSayFor"><block s="reportJoinWords"><list><block var="date"/><l> is a valid date.</l></list></block><l>2</l></block></script><script><block s="doSayFor"><block s="reportJoinWords"><list><block var="date"/><l> is not a valid date.</l></list></block><l>2</l></block></script></block><block s="doAsk"><l>Finally, give me a year.</l></block><block s="doSetVar"><l>year</l><block s="getLastAnswer"></block></block><block s="doIfElse"><custom-block s="is leap year %s"><block var="year"/></custom-block><script><block s="doSayFor"><block s="reportJoinWords"><list><block var="year"/><l> is a leap year.</l></list></block><l>2</l></block></script><script><block s="doSayFor"><block s="reportJoinWords"><list><block var="year"/><l> is not a leap year.</l></list></block><l>2</l></block></script></block><block s="doAsk"><l>Give me a day of the year (1-365 or 366).</l></block><block s="doSayFor"><block s="reportJoinWords"><list><l>The </l><block s="getLastAnswer"></block><l>th day of </l><block var="year"/><l> is </l><custom-block s="day in year %s %s"><block s="getLastAnswer"></block><block var="year"/></custom-block></list></block><l>2</l></block></script></scripts></sprite></sprites></stage><hidden></hidden><headers></headers><code></code><blocks><block-definition s="month name %&apos;num&apos;" type="reporter" category="control"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doIf"><block s="reportNot"><block s="reportIsA"><block var="num"/><l><option>number</option></l></block></block><script><block s="doReport"><block s="reportJoinWords"><list><block var="num"/><l> is not a number.</l></list></block></block></script></block><block s="doIf"><block s="reportEquals"><block var="num"/><l>1</l></block><script><block s="doReport"><l>January</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="num"/><l>2</l></block><script><block s="doReport"><l>February</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="num"/><l>3</l></block><script><block s="doReport"><l>March</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="num"/><l>4</l></block><script><block s="doReport"><l>April</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="num"/><l>5</l></block><script><block s="doReport"><l>May</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="num"/><l>6</l></block><script><block s="doReport"><l>June</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="num"/><l>7</l></block><script><block s="doReport"><l>July</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="num"/><l>8</l></block><script><block s="doReport"><l>August</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="num"/><l>9</l></block><script><block s="doReport"><l>September</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="num"/><l>10</l></block><script><block s="doReport"><l>October</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="num"/><l>11</l></block><script><block s="doReport"><l>November</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="num"/><l>12</l></block><script><block s="doReport"><l>December</l></block></script></block><block s="doIf"><block s="reportOr"><block s="reportLessThan"><block var="num"/><l>1</l></block><block s="reportGreaterThan"><block var="num"/><l>12</l></block></block><script><block s="doReport"><block s="reportJoinWords"><list><l>There is no </l><block var="num"/><l>th month!</l></list></block></block></script></block></script></block-definition><block-definition s="day name %&apos;num&apos;" type="reporter" category="control"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doIf"><block s="reportNot"><block s="reportIsA"><block var="num"/><l><option>number</option></l></block></block><script><block s="doReport"><block s="reportJoinWords"><list><block var="num"/><l> is not a number.</l></list></block></block></script></block><block s="doIf"><block s="reportEquals"><block var="num"/><l>1</l></block><script><block s="doReport"><l>Sunday</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="num"/><l>2</l></block><script><block s="doReport"><l>Monday</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="num"/><l>3</l></block><script><block s="doReport"><l>Tuesday</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="num"/><l>4</l></block><script><block s="doReport"><l>Wednesday</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="num"/><l>5</l></block><script><block s="doReport"><l>Thursday</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="num"/><l>6</l></block><script><block s="doReport"><l>Friday</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="num"/><l>7</l></block><script><block s="doReport"><l>Saturday</l></block></script></block><block s="doIf"><block s="reportOr"><block s="reportLessThan"><block var="num"/><l>1</l></block><block s="reportGreaterThan"><block var="num"/><l>7</l></block></block><script><block s="doSayFor"><block s="reportJoinWords"><list><l>There is no </l><block var="num"/><l>th day of the week!</l></list></block><l>1</l></block></script></block></script></block-definition><block-definition s="days in %&apos;month&apos;" type="reporter" category="control"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doIf"><block s="reportOr"><block s="reportNot"><block s="reportIsA"><block var="month"/><l><option>number</option></l></block></block><block s="reportOr"><block s="reportGreaterThan"><l>1</l><block var="month"/></block><block s="reportLessThan"><l>12</l><block var="month"/></block></block></block><script><block s="doReport"><l>Not a valid month number.</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="month"/><l>1</l></block><script><block s="doReport"><l>31</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="month"/><l>2</l></block><script><block s="doReport"><l>28</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="month"/><l>3</l></block><script><block s="doReport"><l>31</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="month"/><l>4</l></block><script><block s="doReport"><l>30</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="month"/><l>5</l></block><script><block s="doReport"><l>31</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="month"/><l>6</l></block><script><block s="doReport"><l>30</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="month"/><l>7</l></block><script><block s="doReport"><l>31</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="month"/><l>8</l></block><script><block s="doReport"><l>31</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="month"/><l>9</l></block><script><block s="doReport"><l>30</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="month"/><l>10</l></block><script><block s="doReport"><l>31</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="month"/><l>11</l></block><script><block s="doReport"><l>30</l></block></script></block><block s="doIf"><block s="reportEquals"><block var="month"/><l>12</l></block><script><block s="doReport"><l>31</l></block></script></block></script></block-definition><block-definition s="is valid date %&apos;month&apos; %&apos;day&apos;" type="reporter" category="control"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input></inputs><script><block s="doDeclareVariables"><list><l>date</l></list></block><block s="doSetVar"><l>date</l><block s="reportJoinWords"><list><block var="month"/><l>/</l><block var="day"/></list></block></block><block s="doIfElse"><block s="reportOr"><block s="reportLessThan"><block var="day"/><l>1</l></block><block s="reportLessThan"><l>31</l><block var="day"/></block></block><script><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script><script><block s="doIfElse"><block s="reportOr"><block s="reportLessThan"><block var="month"/><l>1</l></block><block s="reportLessThan"><l>12</l><block var="month"/></block></block><script><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script><script><block s="doIf"><block s="reportLessThan"><block var="day"/><l>29</l></block><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script></block><block s="doIf"><block s="reportEquals"><block var="day"/><l>29</l></block><script><block s="doIfElse"><block s="reportEquals"><block var="month"/><l>2</l></block><script><block s="doSayFor"><block s="reportJoinWords"><list><block var="date"/><l> is only valid if a leap year.</l></list></block><l>2</l></block><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script></block></script></block><block s="doIf"><block s="reportEquals"><block var="day"/><l>30</l></block><script><block s="doIfElse"><block s="reportEquals"><block var="month"/><l>2</l></block><script><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script></block></script></block><block s="doIf"><block s="reportEquals"><block var="day"/><l>31</l></block><script><block s="doIfElse"><block s="reportOr"><block s="reportEquals"><block var="month"/><l>2</l></block><block s="reportOr"><block s="reportEquals"><block var="month"/><l>9</l></block><block s="reportOr"><block s="reportEquals"><block var="month"/><l>4</l></block><block s="reportOr"><block s="reportEquals"><block var="month"/><l>6</l></block><block s="reportEquals"><block var="month"/><l>11</l></block></block></block></block></block><script><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script></block></script></block></script></block></script></block></script></block-definition><block-definition s="is leap year %&apos;year&apos;" type="reporter" category="control"><header></header><code></code><translations></translations><inputs><input type="%s"></input></inputs><script><block s="doIfElse"><block s="reportNot"><block s="reportEquals"><l>0</l><block s="reportModulus"><block var="year"/><l>4</l></block></block></block><script><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script><script><block s="doIfElse"><block s="reportNot"><block s="reportEquals"><l>0</l><block s="reportModulus"><block var="year"/><l>100</l></block></block></block><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script><script><block s="doIfElse"><block s="reportNot"><block s="reportEquals"><l>0</l><block s="reportModulus"><block var="year"/><l>400</l></block></block></block><script><block s="doReport"><block s="reportBoolean"><l><bool>false</bool></l></block></block></script><script><block s="doReport"><block s="reportBoolean"><l><bool>true</bool></l></block></block></script></block></script></block></script></block></script></block-definition><block-definition s="day in year %&apos;day&apos; %&apos;year&apos;" type="reporter" category="control"><header></header><code></code><translations></translations><inputs><input type="%s"></input><input type="%s"></input></inputs><script><block s="doIfElse"><custom-block s="is leap year %s"><block var="year"/></custom-block><script><block s="doIf"><block s="reportNot"><block s="reportAnd"><block s="reportLessThan"><l>0</l><block var="day"/></block><block s="reportLessThan"><block var="day"/><l>367</l></block></block></block><script><block s="doReport"><block s="reportJoinWords"><list><l>Errror - there are not</l><block var="day"/><l> days in </l><block var="year"/><l>.</l></list></block></block></script></block></script><script><block s="doIf"><block s="reportNot"><block s="reportAnd"><block s="reportLessThan"><l>0</l><block var="day"/></block><block s="reportLessThan"><block var="day"/><l>366</l></block></block></block><script><block s="doReport"><block s="reportJoinWords"><list><l>Errror - there are not</l><block var="day"/><l> days in </l><block var="year"/><l>. (hint - it is not a leap year.)</l></list></block></block></script></block></script></block><block s="doIfElse"><block s="reportOr"><block s="reportLessThan"><block var="day"/><custom-block s="days in %s"><l>1</l></custom-block></block><block s="reportEquals"><block var="day"/><custom-block s="days in %s"><l>1</l></custom-block></block></block><script><block s="doReport"><block s="reportJoinWords"><list><l>January </l><block var="day"/></list></block></block></script><script><block s="doIfElse"><block s="reportOr"><block s="reportLessThan"><block var="day"/><block s="reportSum"><custom-block s="days in %s"><l>1</l></custom-block><custom-block s="days in %s"><l>2</l></custom-block></block></block><block s="reportEquals"><block var="day"/><block s="reportSum"><custom-block s="days in %s"><l>1</l></custom-block><custom-block s="days in %s"><l>2</l></custom-block></block></block></block><script><block s="doChangeVar"><l>day</l><block s="reportProduct"><l>-1</l><custom-block s="days in %s"><l>1</l></custom-block></block></block><block s="doReport"><block s="reportJoinWords"><list><l>February </l><block var="day"/></list></block></block></script><script><block s="doIfElse"><block s="reportEquals"><block var="day"/><l>60</l></block><script><block s="doIfElse"><custom-block s="is leap year %s"><block var="year"/></custom-block><script><block s="doReport"><l>February 29</l></block></script><script><block s="doReport"><l>March 1</l></block></script></block></script><script><block s="doChangeVar"><l>day</l><block s="reportProduct"><l>-1</l><block s="reportSum"><custom-block s="days in %s"><l>1</l></custom-block><custom-block s="days in %s"><l>2</l></custom-block></block></block></block><block s="doDeclareVariables"><list><l>month</l></list></block><block s="doSetVar"><l>month</l><l>3</l></block><block s="doForever"><script><block s="doIfElse"><block s="reportOr"><block s="reportLessThan"><block var="day"/><custom-block s="days in %s"><block var="month"/></custom-block></block><block s="reportEquals"><block var="day"/><custom-block s="days in %s"><block var="month"/></custom-block></block></block><script><block s="doReport"><block s="reportJoinWords"><list><custom-block s="month name %s"><block var="month"/></custom-block><l> </l><block var="day"/></list></block></block></script><script><block s="doChangeVar"><l>day</l><block s="reportProduct"><l>-1</l><custom-block s="days in %s"><block var="month"/></custom-block></block></block><block s="doChangeVar"><l>month</l><l>1</l></block></script></block></script></block></script></block></script></block></script></block></script></block-definition></blocks><variables></variables></project><media name="Lab 3.3" app="Snap! 5.1, http://snap.berkeley.edu" version="1"></media></snapdata>