Summary: CMPS 282: Software Engineering I Instructor: Paul C. Attie
Department of Computer Science American University of Beirut
Week 9 Spring 2010-11
Description of the Course Project
You will write a program that plays the following game. There are two players, I and II.
Your program will take the role of one of the players. You start with a given, fixed, finite,
file words.txt. This file contains a set of "words", one per line. Each word is a randomly
generated alphabetic string between 2 and 9 characters long. words.txt contains (tentatively)
between 100 and 1000 words. Player I starts play. Play then proceeds with I and II alternating
moves. Each move consists of the player selecting a word from the file, subject to the following
1. The first letter of the word is the same as the last letter of the word that was used in the
2. The word has not been used before.
The first move of I is in response to a "move number 0" which is predefined and constant (I
will use "aaaaaaaaaa"). Each player has a total amount of "playing time" to make all of his
moves. The default value is 4 minutes.
A player loses if and only if he is the first player for which at least one of the following is true:
1. He has made an illegal move, i.e., one not meeting the above conditions.