Program 4: Pokédex
Logistics
- Due Date: Friday, October 27th no later than 11:59 p.m.
- Partner Information: To earn any points on this assignment,
you must complete
this assignment with a partner
who is in the same lab section as yourself.
- Submission Instructions: Upload your
solution, entitled
YourFirstName-YourLastName-PartnerFirstName-PartnerLastName-Program3.py
to the BrightSpace Program 3 Dropbox. Note: If you work with a partner,
only one person needs to submit a solution. If you both submit a
solution, the submission that will be graded is the one from the partner
whose last name comes alphabetically first.
- Deadline Reminder:
Once the submission deadline passes, BrightSpace will no
longer accept your Python submission and you will no longer
be able to earn credit. Thus, if you are not able to fully complete
the assignment, submit whatever you have before the deadline so that
partial credit can be earned.
Learning Outcomes
- Gain experience with object-oriented programming and lists.
- Gain experience working with a programming partner. To be a successful
computer scientist, one must learn how to work effectively with
others. Large programs, such as ChatGPT are written by a team of
people, not one individual.
Background Information
- The file pokedex.txt contains partial
information about 31 Pokémon that mostly come from this
Pokédex.
Assignment
- Using pokedex.py as a starting point,
supply the missing functions such that interaction with a user could
produce this transcript.
Grading - 100 points
- 20 points. The class Pokemon is defined (2 points) with
the appropriate six methods (3 points each).
- 5 points. The function print_menu is correct.
- 10 points. The function print_pokedex is correct.
- 10 points. The function lookup_by_name is correct when the
Pokémon is present (7 points) and absent (3 points).
- 10 points. The function lookup_by_number is correct when the number
is present (7 points) and absent (3 points).
- 10 points. The function total_by_type is correct when the
type is present (7 points) and absent (3 points).
- 10 points. The function average_combat_points is correct.
- 10 points. The format of the output matches the format of the
output in the transcript exactly. (2 points for each type of difference
up to 10 points.)
- 15 points - The Python solution is properly commented,
easy to understand and does not contain unnecessary code.
(3 points for each type of improvement up to 15 points.)
Honor's Lab
- The points you earn from the grading scale above will be
multiplied by .9 for a maximum of 90 points.
- The other 10 points can be earned by enhancing the
assignment in a creative, non-trivial manner.
- In the BrightSpace Dropbox comment box, describe
your enhancement clearly. (You must include this comment
to earn the additional points.)