Download presentation
Presentation is loading. Please wait.
Published byRobert Trust Modified over 9 years ago
1
As you come in… Sign in (in back) and pick up Badge Name Card – write your first name LARGELY on back Log in: Launch/Start Alice Any questions? (of any kind)
2
Flow of Control: How Computer Programs are “Executed” Sequential execution (Do In Order) Parallel execution (Do Together) Conditional execution (if/else statement) Powerful for creating programs that don’t ALWAYS do the same thing Repeated execution (Counted Loop) Powerful for having the computer repeat our instructions multiple times TODAY: While loop: Repetition not defined by a specific number (a count) Controlled by Boolean expression (true or false, keep looping?)
3
Flow of Control: How Computer Programs are “Executed” Sequential / Parallel execution Conditional execution (if/else statement) Repeated execution (Counted Loop, While loop)
4
Wrap Up: Nested If Statements
5
Ball Guess Game
6
Practice: “In Class Clicker Discussion Questions” 1) Individual Thinking, Vote 2) Group Discussion (with 1-2 other students) 3) Group Vote 4) Class-Wide Discussion: a) call on groups to share thinking b) explain yourself (see comments in PPT) OR show video of my explanation Pre-Class preparation: Work Through Online Module Answer Embedded Questions Reflecting Questions (as quiz?)
7
What does this code do? Assume that you have an event so that when you click on an igloo it calls a my first method and sends the igloo as a parameter Next we’ll show you my first method and ask you what it does
8
What does this code do? When blue, red or green… Feedback Paraphrase Justify World.my first method
9
How many of the following are true? 1. When the igloo is blue, says Ice Cold! 2. When the igloo is red, says Hot! 3. When the igloo is blue, says Ice Cold! AND then says Try again! 4. When the igloo is green, nothing happens
10
Feedback Paraphrase Justify 1.blue, says Ice Cold! 2.red, says Hot! 3.blue, says Ice Cold! AND then says Try again! 4.green, nothing happens A)1B) 2C)3D) 4E)
11
BTW: Online Book: Nested Ifs Interactive, Car drive toward clicked on magnet But only if thing clicked on IS magnet (9.1-9.3) Space Ship Take Off But only if all balls are blue (9.4-9.5)
12
Flow of Control: How Computer Programs are “Executed” Repeated execution (Counted Loop) Powerful for having the computer repeat our instructions multiple times TODAY: While loop: Repetition not defined by a specific number (a count) Controlled by Boolean expression (true or false, keep looping?)
13
Online Textbook: 10.5: Zombie Chases Lunchlady Let’s go play the video… Question: When should we “keep chasing”? Until the zombie catches the lunchLady OR (said differently) We should first add the condition that, while it is true, the statements to make the zombie and lunchlady move will repeatedly execute. This condition is: zombie is at least 1 meter from lunchLady. Let’s code it: Download from http://ce21sandiego.org/2013 Meeting 4: Module10.5TeacherStarter.a2w
14
Solution Keep chasing/looping WHILE zombie is more than 1 meter from the lunchLady
15
Solution Keep chasing/looping WHILE zombie is more than 1 meter from the lunchLady Except, yes, this is silly since he always catches her in 3 “steps”
16
Online Textbook 10.5 fixes this… Random turn (0-1 revolution) Random distance for lunchLady and zombie
17
Visualize in head… LunchLady zombie 1 meter
18
What “states” can we have? LunchLady zombie LunchLady zombie
19
What “states” can we have? LunchLady zombie LunchLady zombie 1) Should we keep looping? YES 2) Should we keep looping? NO 3) Write boolean expression that evaluates To TRUE for situation 1 and FALSE for situation 2
20
Hint to getting while loops right Humans naturally think “until” I’ll keep spending until I run out of money (balance <= 0) I’ll keep dancing until I fall asleep Computers use “while” loops – the opposite I’ll keep spending while I still have money (balance > 0) I’ll keep dancing while I am not asleep While I have a dirty dish, I’ll keep washing dishes
21
Let’s have a race… A Wind up penguin (he just goes) While loop with “walk and spin” inside it Jet-pack penguin2 (controlled by <- event) Moves forward.5 meters Race to a stop sign (within 2 meters) Whenever someone gets within 2 meters Stop looping (going)
22
While loops in Alice tend to be used when… You have a user controlled (hence, not predictable) event So you don’t know when the user might Click on an object Type a key, User types a number (pick a number between 1-10, etc. You have (not predictable) actions controlled by, for example, random numbers E.g. the lunchlady/zombie or fish/shark case
23
When should we keep going? e.g. while loop expression true (P1: wind up, P2: jet pack) CasesABCD P1, P2 outsideTTTT P1 inside, P2 outsideTTTF P2 inside, P1 outsideTTFF P1, P2 insideTFFF
24
Which while loop header (tile) would you use to control the “going”?
25
Let’s Build the Code! Download from http://ce21sandiego.org/2013http://ce21sandiego.org/2013 Meeting 4: JetPackPenguinTeacherStart.a2w Plan: Explore object positions Create event that moves jet pack penguin 0.5 meters whenever is pushed. (Test) SIMPLIFY: Create loop that makes windup penguin move repeatedly (forever), 0.35 meters (at same time as “walks” and windupKey “rolls” 0.25 revolutions) CORRECT: change loop to have the game end (e.g. windup penguin stops walking) when either penguin “wins” (gets within 2 meters of stop sign) WHILE:_________________________________________
26
This would STOP the game (evaluate to false) when A. Both penguins must be close to the stop sign B. Either penguin is close to the stop sign C. Neither penguin is close to the stop sign D. I don’t know What does the other one do?
27
CasesE1E2Evaluates To (keep playing while true) P1, P2 outsideTT P1 inside, P2 outside FT P2 inside, P1 outside TF P1, P2 insideFF Truth Table for OR logical operator
28
CasesE1E2Evaluates To (keep playing while true) P1, P2 outsideTT P1 inside, P2 outside FT P2 inside, P1 outside TF P1, P2 insideFF Truth Table for AND logical operator
29
Useful tool: “Life points” Use: to keep track of “points” in a game 2 “cylinder” objects set on top of each other Grey is “background” Yellow is in “front” Yellow moves down a bit each time “you lose a point” The game is over when the yellow cylinder is Distance to the ground >= cylinder height. (So while not, game is ongoing…)
30
Coming Up… Week 5: Compound Boolean Expressions and if statements and while loops Week 6: Functions, Mathematical expressions, parameters, methods Week 7: Functions, parameters, methods and events Week 8: Lists
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.