Question: Build a program that simulates a horse race. You will have a track of 15 units long, and five horses. On each turn, each horse

Build a program that simulates a horse race. You will have a track of 15 units long, and five horses. On each turn, each horse will 'flip a coin' (Right, I don't know how horses flip coins either, but go with me on this.) Half the time, the horse will move forward one unit, and half the time it will stay in the same place. On each turn, you will see the track with the positions of the five horses, and dots for all the other positions. The race ends when one of the horses passes the finish line. You will have two objects in the game. There will be an array of five horse objects. The horse will 'know' how to advance according to a random flip, and to return its position. The other primary entity in this game is the race (or the track, if you prefer.) This object will contain a series of horses. It will also have the ability to start the race. When the race is running, the race class will 'tell' each horse to advance, and will print out a track diagram showing the relative positions of the horses. While you have already written this program in a procedural fashion, this program is a perfect candidate for the object-oriented paradigm. Please use the UML diagram I created as a starting point: oophorse.jpg

The output should look as follows:

Please enter a random seed: 700

. 0.............

.1.............

.2.............

3..............

4..............

..0............

..1............

..2............

.3.............

.4.............

...0...........

..1............

...2...........

.3.............

.4.............

...0...........

..1............

....2..........

.3.............

.4.............

...0...........

..1............

....2..........

..3............

..4............

...0...........

...1...........

....2..........

...3...........

...4...........

...0...........

...1...........

....2..........

....3..........

...4...........

...0...........

...1...........

.....2.........

.....3.........

...4...........

...0...........

...1...........

.....2.........

......3........

....4..........

...0...........

...1...........

......2........

.......3.......

....4..........

....0..........

...1...........

.......2.......

........3......

.....4.........

....0..........

...1...........

.......2.......

........3......

......4........

.....0.........

...1...........

.......2.......

.........3.....

......4........

.....0.........

....1..........

.......2.......

.........3.....

......4........

.....0.........

....1..........

........2......

..........3....

......4........

.....0.........

.....1.........

........2......

...........3...

.......4.......

.....0.........

......1........

.........2.....

............3..

.......4.......

.....0.........

.......1.......

.........2.....

............3..

.......4.......

.....0.........

........1......

.........2.....

............3..

.......4.......

.....0.........

........1......

..........2....

.............3.

.......4.......

......0........

.........1.....

...........2...

.............3.

.......4.......

.......0.......

.........1.....

...........2...

..............3

.......4.......

........0......

..........1....

............2..

..............3

........4......

.........0.....

..........1....

............2..

..............3

........4......

.........0.....

..........1....

.............2.

...............

........4......

Horse 3 wins!

The program has to be written in C++.

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!