Steve, Jon, Jennifer, and Kelly own dogs and take their dogs to the park between 12:00 noon and 4pm. There are four activities the owners can do while at the park. These are as follows: Play catch with the dog, clean the dogs poop, walk the dog, or a fourth activity. The owners can only be doing one activity at a time, and the order that they do activities should be random. The park has two tennis balls for playing catch and one pooper-scooper. This means that only two owners can be playing catch at once, and only one owner can be cleaning poop at a time. If an owner tries to play catch or clean poop and can't because the tennis balls or the pooper-scooper are being used they should do their fourth activity until a ball or the pooper-scooper becomes available. If there are two or more owners that are waiting for the same object then the owner that started to wait first should get the object first (FIFO). Then they should start the activity they originally tried to do. The time the owners take to do each activity varies. The owner activity lengths, in minutes, are as follows:
Owner Catch Clean Walk
Steve 5 2 10
Jon 8 2 4
Jennifer 10 4 8
Kelly 1 2 6
Each owner also has a fourth activity they can do but the activity and activity lengths vary from owner to owner. The lengths should be random whole numbers. Steve reads between 2 and 8 minutes, Jon plays game-boy between 4 and 6 minutes, Jennifer cross-stitches between 1 and 5 minutes, and Kelly crochets between 6 and 10 minutes. If the owner does their fourth activity because it was randomly chosen then their time should be random as well, according to the above description. If the owner does their fourth activity because they are waiting for a ball or the pooper-scooper, then they should do the activity until the object becomes free and then start doing that object's activity.
You should record what owner begins which activity at what time. You should save all this information to one file. Each record in the file should be on a separate line and each record should be in the format 'Owner:Time:Activity.'