Answered step by step
Verified Expert Solution
Question
1 Approved Answer
To emulate the horse race I have written a class / method for you called Race. For Python see the lecture Lists - randomize and
To emulate the horse race I have written a classmethod for you called Race. For Python see the lecture Listsrandomize and corresponding class notes which scrambles the horses. For java you can look for the Race Google Doc which has the class. For C I just have a function that will do it using a Fisher Yates algorithm to scramble them. You can also dig in the class notes for Midterm hints, and I will try to post some newly recorded midterm hints in the week ahead for you.
Make a program that takes bets on horse races. There will be four types of bets described below. The horse race result is generated by a function called ReadySetgo that simply scrambles the horses into random order as a pseudosimulated horse race and that tells you the race results. I will provide you with the code for the Race function.
We assume four horses run in a race though you want to write it so it would be fairly easy to change teh number of horses and we assume the horses are named by numbers Advanced students if you feel adventurous you can but are not obligated to give the horses more creative names and make the number of horses running in the race programmable rather than fixed to four.
Lets say the horses are initially in the order If you call Readysetgo to randomly shuffle them thats our pseudorace we might get a race result of for example, which means: horse # came in first, horses # came in second, horse # came in third and horse # came in fourth.
The user starts out with dollars. Betting costs are as follows:
Exacta bet costs dollars, you win if you win by picking both the first place horse and picking the second place horse exactly right
Exacta Box bet costing dollars, you win if you win by picking both the first place and second place horse and they can come in any order.
Trifecta bet costs dollars, you win if you win by picking the first place horse and picking the second place horse and picking the third place horse exactly right.
Trifecta Box bet costs dollars, you win if you win by picking the first place and second place and third place horse and they can come in any order.
Advanced students can but are not obligated to make this bet cost programmable, ie some students allow the user to decide how much they want to bet on the race, and some even let the user borrow money and get more in debt if they keep on losing and run out their dollars.
We need our program to allow the user to place any of the four types of bets. The user is given a USD US dollars cash balance of dollars for betting. The menu options allow the user to place any of the four bets, run the race, see the result, see what their cash balance is and exit the program. Advanced students if you wanted to but are not obligated to you could save a history of the bets they placed so they could also ask for their betting history.
There are two easy ways to implement the user interface for this, one is going to be with a simple text based menu, and one is going to be with a simple stringcommandline based menu. A text menu is where you give the user a choice of options and tell them for example: enter to place an exactabet, enter to place an exactabox bet, etc. ie:
Welcome to Horse Betting!
Please select from the following options
Place an exact bet
Place an exactabox bet
Place a trifectabet
Please a trifectabox bet
See your USD balance
Exit
etc
They then choose the option they want and then you ask them what horses they pick as the winners, get their pick, run the race, see if they won, etc.
A string based menu is a slightly different input style, where the input is more of a commandline driven sentence that gets parsed into components in the program to determine what they want, for example, if the user inputs the command line sentence
exacta
the program will read that in divide that up into the components and figure out that they are placing an exacta bet with horse and as the picks. This involves splitting the input up if you think of the input as a sentence you will want to chop it up into words. I will give an example on how to do this in a google document called Split.
YOU SHOULD IMPLEMENT THIS WITH THE STRING BASED MENU USING THE STRING SPLIT. I am going to be giving a lecture on both approaches with examples of both, to show you how to make such a user interface. I am also going to cover relevant new material over several lectures and I will give many hints and working examples to the beginners to help them set all of this up to work. Lets talk about what the four bets mean I will also be showing you some intro horse betting videos to help you understand how exacta and trifecta betting works if you have never been to the racetrack
Example Input:
EXACTA
EXACTA means that we are betting that the winner and second place will be exactly in that order ie; the bet is betting
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started