Now, I'm not going to call it 'game programming', since game programming is way more than what I did. In fact, what I did was just a test for me. So I decided to write a game I was playing on my old Nokia E50 phone, a Slot Game. This slot game I was playing on my phone was really simple. It had only 3 slots with different items in each. Fruit Fiesta – One of the most played Java slot game is the Fruit Fiesta slot game and the reason why it is one of the most popular Java phone slot machines is that when you are playing it you can win a massive progressive jackpot simply by lining up the three Fruit Fiesta log symbols on the third payline when playing maximum bet spins and that jackpot could be a massive amount of cash so do.
Slot machines are the most popular game in modern casinos. If you’ve never seen one, a slot machine resembles an arcade game that has a lever on its side. For a small fee you can pull the lever, and the machine will generate a random combination of three symbols. If the correct combination appears, you can win a prize, maybe even the jackpot.
Slot machines make fantastic profits for casinos because they offer a very low payout rate. In many games, such as Blackjack and Roulette, the odds are only slightly stacked in the casino’s favor. In the long run, the casino pays back 97 to 98 cents in prizes of every dollar that a gambler spends on these games. With slot machines, it is typical for a casino to only pay back 90 to 95 cents—and the casino keeps the rest. If this seems underhanded, keep in mind that slot machines are one of the most popular games at a casino; few people seem to mind. And if you consider that state lotteries have payout rates that are much closer to 50 cents on the dollar, slot machines don’t look that bad.
In this project, you will build a real, working slot machine modeled after some real life Video Lottery Terminals from Manitoba, Canada. The terminals were a source of scandal in the 1990s. You’ll get to the bottom of this scandal by writing a program that recreates the slot machines. You’ll then do some calculations and run some simulations that reveal the true payout rate of the machines.
This project will teach you how to write programs and run simulations in R. You will also learn how to:
- Use a practical strategy to design programs
- Use
if
andelse
statements to tell R what to do when - Create lookup tables to find values
- Use
for
,while
, andrepeat
loops to automate repetitive operations - Use S3 methods, R’s version of Object-Oriented Programming
- Measure the speed of R code
- Write fast, vectorized R code
rolls[random -1]++;
This will *greatly* decrease the verbosity of your program, and make it more clear why it's doing what it does.
Stephan van Hulst wrote:First of all, start by making your program more clear by eliminating all the 'cases' you use. You can store your values in a simple array like this:
rolls[random -1]++;
This will *greatly* decrease the verbosity of your program, and make it more clear why it's doing what it does.
I can't use rolls to store my values, rolls needs to be a number put in by the user because it determines how many times a dice would be rolled. The only real use I have for it is to determine when the main for loop ends. Then I need compare each new random to 1-12, to determine how many times that number has been rolled. I sort of understand what you're getting at with rolls[random -1]++ but I'm not quite sure how to assign the array as you're trying to point out.
Anyways this is what I've worked out according to what I think you mean. Still get the same issue though. I think it's asking for a new rolls every time the for loop runs through, any idea how to fix that?
Anyway, looking at your program, I don't see why it would keep asking for input. You should have an entirely different problem on your hand, namely that you're stuck in a permanent loop. Have a look at the exit condition of your nested for loop.
By the way, you can also eliminate a lot in your display code.
If I may give you a big hint, I think you are using the nested loop for the wrong purpose. Tell me, how many dice do you have?
Stephan van Hulst wrote:I apologize, I didn't notice you already had a variable with that name. I meant a new variable, which you have interpreted correctly.
Anyway, looking at your program, I don't see why it would keep asking for input. You should have an entirely different problem on your hand, namely that you're stuck in a permanent loop. Have a look at the exit condition of your nested for loop.
By the way, you can also eliminate a lot in your display code.
If I may give you a big hint, I think you are using the nested loop for the wrong purpose. Tell me, how many dice do you have?
That's the format the displays supposed to go in, according to the example given by my teacher. These are the assignment instructions, and I have to use nested loops because of the section I'm on, it's an Ap class that i take online. So it's mostly self learned.
1. Create a new project called 5.05 Random Dice in the Mod05
Assignments folder.
2. Create a class called DiceProbability in the newly created project
folder.
3. Ask the user to input how many times the dice will be rolled.
4. Calculate the probability of each combination of dice. (You may want to start with
more familiar six-sided dice.)
5. Print the results neatly in two columns (do not worry about excessive decimal places).
6. What is the effect on the percentages when the number of rolls is increased?
7. After the program works, you might want to make it more interesting and ask the user
to enter the number of sides on a die (singular for dice).
You can make your display code display the same stuff, except with less verbose code, in the same way you altered the rest of your program. 'Two or more, use a for'.
Stephan van Hulst wrote:It doesn't say in the requirements you need a nested loop.
It isn't very specific but it does say it in the grading rubric, and the assignment is going to be turned in as Assignment 5.05 nested loops. So I'm pretty sure it had to use nested loops, believe me if it was my choice I wouldn't use nested loops for this.
1. Ask the number of rolls
2. Make a new array which is the size of the number of rolls. Each element will contain the roll result
3. Roll the dice and store the result in the array
4. Loop through each dice face (by the way, the numbers of faces should be kept in a variable)
5. Loop through the array, and count the number of times the current face was rolled
6. Calculate the probability the current faced has been rolled
Java Program Slot Machine Example Java
Javascript Slot Machine
It should do this:
This will calculate probabilities. Your program right now just rolls a d12 and this will, with enough rolls, come close to the probability, but will not show it.
Slot Machine Simulation Java
Life is full of choices. Sometimes you make the good ones, and sometimes you have to kill all the witnesses.