CSC 209H: Assignment 3: Part 3

Due date: 10:00 p.m. Thursday November 24, 2005.


Part 3: rpspro (optional) (up to 10% bonus on A3)

Just for fun, we'll play a roshambo tournament. The prizes: bonus marks.

Each student who chooses to participate will compose one Rock, Paper, Scissors program using C. This program should follow the specifications of part 1 of Assignment 3, except that the C source code file should be called rpspro.c.

The format of the tournament will be round-robin: each player will play every other player. Each match will consist of at least 1000 rounds. Points will be awarded to each competitor based on the relative number of rounds won and lost. A tie is when two competitors will approximately the same number of rounds. (More details to scoring will come soon.)

For each match, a new process will be created for each competitor. At the conclusion of the match, each process will be terminated (first by closing the input, then by a SIGKILL). Thus the lifetime of an instance of your program is one match, and will play against a single opponent.

Tips and Hints

The fine print

I reserve the right to change any of these rules based on the outcome of the event. Distribution of any bonus marks are soley at my discretion, and cannot be appealed. You may not send a signal to any other process. Any attempt to cheat will result in disqualification. Any attempt to access the tournament environment or the local file system other than for legitimate purposes (such as /dev/random) will be considered an academic or non-academic offense and prosecuted as such, with penalties that may include failure of the course, transcript notation, or expulsion.

Learning Objectives

What to hand in

You will commit to the a3 directory of your CSC209 repository a single file called rpspro.c containing the C source code to compile your program.

Since you will not be submitting a Makefile, each program should be complete. It will be compiled automatically with the command line:
gcc -Wall -g -lm rpspro.c -o student_login
where student_login is your CDF login name.

If you want additional switches added to the compile line, please email me your request and reason.