Register to receive free access to all teacher materials.
Lesson Level
Advanced II
Programming Language
Snap!
Grades
4-5, 6-8, 9-12
Free Teacher Materials
In this activity, you will make a Finch version of the game Simon Says. The Finch will give the user random commands and count how many the user successfully follows.
Start by creating a list called PossibleOrientations. Store the following Finch orientations in this list: Beak Up, Beak Down, Level, Upside Down, Left Wing Down, and Right Wing Down. You should also declare a variable to hold the user’s score.
Your program should meet the following requirements:
- For each round of the game, the computer should tell the user to move the Finch to a particular orientation. The Finch orientation for each round should be chosen randomly.
- After the user moves the Finch, the game should check if the Finch is in the correct orientation. If it is, the score should increase and a new round should start. If it is not, the game should end.
- The game should get harder as the user scores more points. For example, the time to move the Finch into the correct position might decrease as the score increases.
- The Finch’s beak and buzzer should indicate when the user scores a point and when the game ends.
- When the game ends, it should display the user’s final score.
Hint: You can use a variable gameOver to help you decide when the game is over. Set this variable equal to 0 at the beginning of the program. Then set the variable to 1 when the user does not choose the correct orientation.
Extension: What if the robot gives a command without saying, “Simon says”? In that case, the player shouldn’t make the movement. Can you catch them if they make the movement anyway?