CMPUT 101 Lab # 2 September 17, :00 – 16:50
Recap Lab # 1: Guido World (.wld) Robot [ave] [street] [direction] [# of beeper] Robot 3 2 E 1 Wall [ave] [street] [direction] [length] Wall 3 4 S 2 Beepers [ave] [street] [# of beeper] Beepers 1 4 6
Recap Lab # 1: Guido Program (.gvr) move, turnleft, pickbeeper, putbeeper, turnoff All “define” instructions have to be at the beginning of the file.
Conditionals conditional branching if : if front_is_clear: move indicates a set of instructions within the same indent. All conditions you can use are listed in Step08 guide
Iteration while loop while : while front_is_clear: move While do until the test condition is false.
Iteration Do do : do 5: move
Part a Step09: use do, and if instructions Guido will shut down if asked to pick up a beeper and there is not one there, which conditional to use? check if wall reached. Which conditional will be used to check if wall reached? Read Step08 first
Step08 robot 1 2 E Beepers Beepers Beepers Beepers Beepers Beepers Beepers Wall 12 2 E
Part b use while instead of do, street can be any length, wall at the end
Part c check for multiple beepers, do we know how many? which conditional? while more beepers, keep picking up
Part d traverse each row, pick up beepers, until North East corner reached. Drop beepers, how would you check if any are in the bag? See figures for example
Part e Consider the map --- see figure Use the program in part d but run in the new world No need to write a new program Answer the questions verbally
Keep in mind use block structures (routines) to simplify the code e.g. turnNorth, turnEast, sweepOneRow, etc. students can work in teams of two, or three (if there is an odd number of students), or can also work individually test with both sample worlds provided