To start this assignment, download this zip file.
The following guide pages cover material needed for this assignment:
Homework 2c — Decomposition
1. Barcodes
For this problem, Bit wants to finish the barcodes. There are two starting worlds:
The finishing worlds should look like this:
The starter code is in barcodes.py
.
2. Soccer fields
For this problem, Bit wants to plant grass in the soccer fields. There are two starting worlds:
Bit’s job is to put green inside each soccer field:
The starter code is in soccer_fields.py
.
3. Bit-a-thon
Bit is participating in a triathlon! Help Bit climb down a mountain, swim across the river, and then cycle to the finish line. There are two race courses:
Bit should finish the course, tracing the running path in green and the cycling path in red:
The starter code is in bitathon.py
.
Grading
Activity | Points |
---|---|
barcodes.py | 4 |
soccer_fields.py | 8 |
bitathon.py | 8 |
Manual Grading
Refer to the Quality Code guide page for detailed explanations and examples on each of these rubric criteria.
Intent
The intent of this assignment is for you to decompose complicated problems well. Quality code uses functions to break a problem into pieces. Each function should have a descriptive name that indicates what it does. The quality code guide contains our standards for decomposition.
Not only will decomposition improve the quality of your code, it will make these problems much easier. Break the problem into the largest repeated sections first, like painting one soccer field. Then break that problem into its largest sections, like dropping down, painting one column, and climbing up.
Rubric | Points |
---|---|
Whitespace | 1 |
Naming | 1 |
Decomposition | 4 |
Intent | 4 |
Total | 10 |