Computer Science

# Homework 2a — If

## 1. Invert

Bit needs to invert all of the blue squares. For example, if Bit starts in this world:

then the final world needs to look like this:

To check if a square is empty, use:

``bit.is_empty()``

To erase the color in any square, use:

``bit.erase()``

Use the starter code in `invert.py` to write your code.

Be sure to check all three worlds! You will also see a world called `invert2`:

and a world called `invert-careful`:

## Wander

Bit starts in this world:

Bit follows these rules:

• Bit moves until it’s blocked in front
• Bit turns left when encountering a green square
• Bit turns right when encountering a blue square
• Bit paints empty squares red

The final world should look like this:

Use the starter code in `wander.py` to write your code.

Be sure to check both worlds! You will see a second world called `wander2`:

## Fix the pipe

Bit is inside of a pipe and wants to patch the holes. The starting world looks like this:

Bit patches the holes with blue sealant. So when Bit is finished, the world should look like this:

Use the starter code in `fix_pipe.py` to write your code.

`invert.py`5
`wander.py`5
`fix_pipe.py`10
Manual grading will focus on decomposition and correct use of `if`, `elif`, and `else`.