CS100A              Extra-Credit Assignment                Fall 1998

Here’s a chance to design part of a program yourself and get extra credit for it.

You can do this assignment in groups of 1 or 2 people. Extra credit will work like this. We will assign class grades, without taking this assignment into account. Then, for each student who did this assignment, we will see whether this assignment would put them into a higher grade category (and act accordingly). The assignment will be worth roughly about 25% of prelim2.

Assignment

Extend the Checkers Program so that it allows several jumps in a row.

Timetable

0. In lecture, 31 November, hand in a short specification that describes how the user will know they can make another jump and how they either make the jump or decline to do so. (Declining to do so could be indicated, for example, by the other player moving.) Try to keep this as simple as possible. This will require some changes to what appears on the GUI.

1. We will respond quickly with a critique (pick up in Carpenter), after which you can start designing and coding the change.

2. Hand in a copy of your completed assignment --class Checkers only-- TOGETHER WITH A FLOPPY DISK THAT HAS THE COMPLETED PROJECT, on or before 10 December, in Carpenter or in Upson 4115.

Note: For those of you who want to work on this assignment over Thanksgiving: Hand in the specification in lecture on Tuesday 24 November; we will have a critique ready for you by Wednesday morning.

 

Two points on the design of this extension

1. The GUI should indicate that a player can make another jump ONLY AFTER a jump has been made and if another jump is actually possible. Thus, your code has to check after a jump whether another jump is possible.

2. You may do whatever you want concerning how a player is told that another jump is possible. We think that all is required is to change the strings in Labels whoPlays, nextTask, and nextTask1.

Note: You can use our correct class Checkers (see the CS100 web site). You may want to use it rather than yours, for you will have problems if yours has mistakes in it.