Error
Errors:
Grader Results
Pass | Test | Message | |
---|---|---|---|
- | Test results will show here. | - |
Errors:
Karel goes back to clean up the street she adopted once a week for the next three weeks. Each time she finds that there is less litter!
Write one program that has Karel clean up the litter regardless of which week it is. Start with the program you wrote for the Litter Pick Up Level 2 activity. Then, revise your program to include some if statements that help Karel react to the different amounts of litter each week.
Make sure to test your program against all three worlds!
Debugging Tips
- Basic Commands:
- Use the error message to identify where your mistake is.
- Check that you correctly spelled the command.
- Check that you included the parentheses.
- Ensure all commands are all the way to the left - there are no spaces before the command.
- For Loops and If Statements:
- Check that you included the colon.
- Check your indentation. If you press “enter “after the colon, the editor should automatically indent for you.
- If you need to adjust your indentation, use the “tab” key.
Ending World
Karel's Built in Commands
move() |
turn_left() |
|
put_ball() |
take_ball() |
UltraKarel commands
paint(color) |
UltraKarel conditions
random_chance() |
color_is(color) |
# Paints a square red. paint(color['red']) # Colors: color['red'] color['blue'] color['green'] color['yellow'] color['cyan'] color['orange'] color['white'] color['black'] color['gray'] color['purple'] # Determine if a square is a certain color if color_is(color['red']): move() Random # Returns true 50% of the time random_chance() # Returns true probability percentage of the time random_chance(probability) # Returns true 20% of the time. random_chance(0.2) # Example if random_chance(0.8): put_ball()
Functions
Writing a function is like teaching karel a new word.
Naming Functions: You can name your functions whatever you want, but you can't have spaces in the function name.
Remember that commands in functions must be indented one level
def turn_right(): turn_left() turn_left() turn_left() def turn_around(): turn_left() turn_left() def your_function_name(): # Code that will run when you make a call to # this function.
Calling a Function
You call a function to tell the computer to actually carry out the new command.
# Call the turnn_around() function once turn_around() # Call the turn_right() function 2 times turn_right() turn_right()
Conditional Statements
Remember that comands in conditional statements must be indented one level.if condition:
#code that will run if the condition is true
if condition:
#code that will run if the condition is true
else:
#code that will run if condition is not true
Example of if statements
if front_is_clear(): move() if balls_present(): take_ball() else: move()
Karel Conditions
Don't forget the()
at the end!
front_is_clear() left_is_clear() right_is_clear() facing_north() facing_south() facing_east() facing_west() balls_present() |
front_is_blocked() left_is_blocked() right_is_blocked() not_facing_north() not_facing_south() not_facing_east() not_facing_west() no_balls_present() |
Loops
Remember that commands in a loop statement must be indented one level.While Loops
while CONDITION: # Code that will run while the CONDITION is true. # Once the CONDITION is no longer true, # it will stop.
Example of while loops
# This moves Karel to a wall while front_is_clear(): move()
For Loops
for i in range(COUNT): # Code that will run 'COUNT' times
Example of for loops
# This puts down 10 balls */ for i in range(10): put_ball()You can have multiple statements or function calls in a for loop.
# This puts down five balls and moves after each one for i in range(5): put_ball() move()
Comments
""" A multi-line comment describes your code to someone who is reading it. """ # Use single line comments to clarify code.