Project 3 Info. Page for sections 4, 5, 6, and 7 (Wesley Turner's sections)
Currently under construction!
Groups:
For Project 3, you can work in groups of up to 3 people. All groups,
regardless of size, will we graded using the same criteria.
-
When you form a group, please send me an e-mail at turnerw@cs.rpi.edu
and I will add you to the list of established
groups
-
If you or one of your partners already e-mailed me your group, check the
list
to see if your group is correct.
-
If you can not form a group please
send me an e-mail at turnerw@cs.rpi.edu
and I will assign you to a group. 
Submission:
Although you are working on two separate programs (map version and hash
table version), you should only submit one tar file. Therefore, it is important
that all your file names be unique, i.e., you should not have two main.cpp
files. Instead, you should have main_map.cpp for the map
version and main_hash.cpp for the hash table version. Alternatively, you may use macros to define conditional compile instructions. If you do not
understand that last sentence, use separate files.
Please read the submission guidelines for
project 3. Some of the details have changed.
-
Only tar files will be accepted.
-
Please make sure your files are not corrupted by extracting your tar file
in another directory and checking the integrity of each file. Many
people have been submitting binary files. Make sure all your files
are text. There will be no opportunity for re-submission, so you must make
sure your tar file is perfect.
-
Please don't wait until the last minute to submit; submissions will not
be accepted after 11:59:59 PM. There will be a small grace period
of about 30 minutes but don't press your luck.
-
The submission directory is /dept/cs/cs230/sections4567/project3/
-
If you are working in a group, your tar files must be group#.tar
where # is your group number. Please see the list
of established groups to get your group number.
Hints:
-
Code for the random number generator can be found in random.h
-
The easiest way to implement this code is to have an event loop that continues
until the appropriate number of events (connection and disconnection) have
been processed. These hints are inconsistent with the instructions given for
sections 1, 2, 3, and 8; but are consistent with the way the sample code works.
In each pass through the loop:
- A connection event is generated if a random number is less than or equal to the command line probability.
- The next event is removed from the priority queue and the current time updated to reflect the time of the event. If the event is a connection
event a matching disconnection event is generated and pushed onto the queue.
The current event is then processed.
- Your simulation needs to generate times for connection and disconnection.
You should generate these times as a random offset of between 0 and 30 minutes
added to the current time. You should keep time in seconds.