Lesson 12: If/Else with Bee
Overview
Up until this point students have been writing code that executes exactly the same way each time it is run - reliable, but not very flexible. In this lesson, your class will begin to code with conditionals, allowing them to write code that functions differently depending on the specific conditions the program encounters.
Purpose
After being introduced to conditionals in "Conditionals with Cards," students will now practice using them in their programs. The if / else
blocks will allow for a more flexible program. The bee will only collect nectar if there is a flower or make honey if there is a honeycomb. Students will also practice and recognize a connection between if / else
blocks and while
loops in this set of puzzles.
Agenda
Warm Up (10 min)
Bridging Activity - Conditionals (15 min)
Main Activity (30 min)
Wrap Up (15 min)
Extended Learning
View on Code Studio
Objectives
Students will be able to:
- Translate spoken language conditional statements into a program.
- Solve puzzles using a combination of looped sequences and conditionals.
Preparation
- Play through the puzzles to find any potential problem areas for your class.
- Make sure every student has a journal.
Links
Heads Up! Please make a copy of any documents you plan to share with students.
For the Students
- Unplugged Blocks (Courses C-F) - Manipulatives
Vocabulary
- Conditionals - Statements that only run under certain conditions.
Support
Report a Bug
Teaching Guide
Warm Up (10 min)
Introduction
Review the "Conditionals with Cards" activity with your students.
- What is a conditional statement?
- When is a conditional useful?
- What are some of the conditions you used in the last activity?
Now we're going to use conditionals with the Code.org bee to help him deal with some mysterious clouds. We don't know if his flowers have nectar or not, so we'll need to use conditionals to make sure that we collect nectar if it's there, but that we don't try to collect nectar from a flower that doesn't have any.
Bridging Activity - Conditionals (15 min)
This activity will help bring the unplugged concepts from "Conditionals With Cards" into the online world that the students are moving into. Choose one of the following to do with your class:
Unplugged Activity Using Paper Blocks
Print and cut out 2-3 if / else
and blank action blocks from Unplugged Blocks (Courses C-F) - Manipulatives and pull out a deck of cards. Ask the class to come up with a couple of conditionals to use with the deck of cards like they did in "Conditionals with Cards." When the conditionals have been decided on as a class, fill in the blank part of the if
block with the various card values that the kids came up with. Examples include "King of Hearts", "Even Numbered", or "Diamonds". Fill in the action blocks with the actions the students came up with. Make sure the students know the action blocks need to be directly under the if
or else
block. Below is an example.
Now shuffle the deck of cards and play "Conditionals with Cards" again. Flip through the deck card-by-card, reacting to cards if a conditional has been made for it.
Preview of Online Puzzles
Pull up a puzzle from this lesson, we recommend puzzle 9.
- Ask the class what the bee should do when it gets to the cloud.
- The bee should use a conditional to check for a flower or a honeycomb.
- Use the
if at flower / else
block. Ask the class what the bee should do if there's a flower. If there's not a flower, there will be a honeycomb. What should the bee do then?- The bee should
get nectar
if there is a flower andmake honey
if there is a honeycomb.
- The bee should
Fill in the rest of the code and press Run
. Discuss with the class why this worked.
Main Activity (30 min)
Online Puzzles
These puzzles might sprout some questions, so have the students work in pairs or implement the "Ask three before you ask me" rule (have the students ask three other peers for help before they go to the teacher.) This will spark discussions that will develop each student's understanding.
Wrap Up (15 min)
Journaling
Having students write about what they learned, why it’s useful, and how they feel about it can help solidify any knowledge they obtained today and build a review sheet for them to look to in the future.
Journal Prompts:
- What was today's lesson about?
- How did today's lesson make you feel?
- What conditionals did you use in your code today?
- What are some other conditionals a bee might use? Examples include:
- if there is a tree in front of me, buzz out of the way
- if my wing is hurt, rest on the ground
- if I see another bee, say "Hello!"
Extended Learning
Use these activities to enhance student learning. They can be used as outside of class activities or other enrichment.
True/False Tag
- Line students up as if to play Red Light / Green Light.
- Select one person to stand in front as the Caller.
- The Caller chooses a condition and asks everyone who meets that condition to take a step forward.
- If you have a red belt, step forward.
- If you are wearing sandals, take a step forward.
- Try switching it up by saying things like "If you are not blonde, step forward."
Nesting
- Break students up into pairs or small groups.
- Have them write if statements for playing cards on strips of paper, such as:
- If the suit is clubs
- If the color is red
- Have students create similar strips for outcomes.
- Add one point
- Subtract one point
- Once that's done, have students choose three of each type of strip and three playing cards, paying attention to the order selected.
- Using three pieces of paper, have students write three different programs using only the sets of strips that they selected, in any order.
- Encourage students to put some if statements inside other if statements.
- Now, students should run through all three programs using the cards that they drew, in the same order for each program.
- Did any two programs return the same answer?
- Did any return something different?
- Conditionals: If Statements
- 1
- Prediction
- 2
Student Instructions
The cloud is blocking the view. There could be a flower under this cloud. If there is a flower, the bee will need to collect nectar once. If there is not a flower the bee should do nothing. Take a good look at the code below. What do you think will happen after you click "Run"?
The bee will move to the cloud and try to get nectar, no matter what.
The bee will move to the cloud and only try to get nectar if there is a flower underneath.
The bee will move to the cloud and then do nothing, no matter what.
I don't know.
Student Instructions
More clouds!
Check underneath every cloud to see if it is hiding a flower before you get nectar. If there is a flower underneath the cloud, the bee will need to get nectar once.
Remember: Not all clouds hide the same thing!
Student Instructions
You can only collect nectar from flowers, but you can check any space to see if there is a flower. If there is a flower under any of these clouds, the bee will need to collect nectar once.
Student Instructions
In this puzzle, we know that every flower has exactly one nectar, but the flowers aren't spaced evenly.
Get all of the nectar using as few blocks as possible.
Student Instructions
Student Instructions
"Now I just want to make honey."
Some of these clouds might have honeycombs under them. Be sure to check if a honeycomb is hiding behind each cloud! If there is a honeycomb, the bee will only need to make honey once.
- Conditionals: If and If/Else Statements
- 8
- Practice
- 9
Student Instructions
Sometimes a cloud covers a flower, sometimes it covers a honeycomb!
Use the ifelse
block to collect nectar at flowers and make honey at honeycomb. Remember: if there is a flower, the bee only needs to get nectar once. If there is a honeycomb, the bee only needs to make honey once.
- Prediction
- 10
Student Instructions
Look carefully at the code below. What do you think will happen after you click "Run"? Remember: there will only ever be one honeycomb or one flower behind each cloud.
The bee will get nectar at each flower and make honey at each honeycomb.
The bee will try to get nectar from both flowers and honeycomb.
The bee will try to get honey from both flowers and honeycomb.
I don't know.
- Challenge
- 11
Student Instructions
Challenge: There will be either a flower or a honeycomb under each of those clouds!
Collect nectar once if there is a flower. Otherwise, make honey once (because there is a honeycomb).
Student Instructions
Collect all of the nectar or make all the honey. You can only collect nectar from flowers and make honey from honeycombs. Check any space to see if there is a flower or honeycomb. There will only ever be one flower or one honeycomb behind each cloud.
Student Instructions
Conditionals can be helpful, even when you know exactly what is in each spot!
Collect all of the nectar and make all of the honey.
Student Instructions
Collect all of the nectar and make all of the honey. You can only collect nectar from flowers and make honey from honeycombs. Check every space to see if there is a flower or honeycomb.
Student Instructions
Collect all of the nectar and make all the honey. You can collect all of the nectar in one flower by using the while nectar > 0
loop.
Standards Alignment
View full course alignment
CSTA K-12 Computer Science Standards (2017)
AP - Algorithms & Programming
- 1B-AP-11 - Decompose (break down) problems into smaller, manageable subproblems to facilitate the program development process.