1 / 30

As you come in…

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) . Flow of Control: How Computer Programs are “Executed”. Sequential execution (Do In Order) Parallel execution (Do Together)

olaf
Download Presentation

As you come in…

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  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” Pre-Class preparation: Work Through Online Module Answer Embedded Questions Reflecting Questions (as quiz?) 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

  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 youmy first method and askyou what it does

  8. Feedback Paraphrase Justify What does this code do?When blue, red or green… World.my first method

  9. How many of the following are true? • When the igloo is blue, says Ice Cold! • When the igloo is red, says Hot! • When the igloo is blue, says Ice Cold! AND then says Try again! • When the igloo is green, nothing happens

  10. blue, says Ice Cold! red, says Hot! blue, says Ice Cold! AND then says Try again! green, nothing happens Feedback Paraphrase Justify • 1 B) 2 C)3 D) 4 E)

  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… zombie LunchLady 1 meter

  18. What “states” can we have? zombie zombie LunchLady LunchLady

  19. What “states” can we have? zombie zombie LunchLady LunchLady 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)

  24. Which while loop header (tile) would you use to control the “going”?

  25. Let’s Build the Code! • Download from http://ce21sandiego.org/2013 • Meeting 4: JetPackPenguinTeacherStart.a2w • Plan: • Explore object positions • Create event that moves jet pack penguin 0.5 meters whenever <space> 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. What does the other one do? This would STOP the game (evaluate to false) when • Both penguins must be close to the stop sign • Either penguin is close to the stop sign • Neither penguin is close to the stop sign • I don’t know

  27. Truth Table for OR logical operator

  28. 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

More Related