tag:blogger.com,1999:blog-82049631048804710812023-11-15T11:22:14.767-08:00Wublagames code examplesWublagameshttp://www.blogger.com/profile/04081464037116756026noreply@blogger.comBlogger1125tag:blogger.com,1999:blog-8204963104880471081.post-16550359643345720952013-05-09T12:46:00.000-07:002013-05-09T12:46:06.032-07:00Blackjack Simulation<span style="font-family: Arial, Helvetica, sans-serif;">I wanted to create a simulation based on how I play Blackjack. I assume that I sit down with $200 at a table and want to double my money. The table minimum is $10 per hand. If I am ahead I raise my bet if I am down I chase my money. I assume the odds of winning at 43% and the odds of tying are 8%. </span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">The output looks like this:</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;"></span><br />
<span style="font-family: Arial, Helvetica, sans-serif;">After 500 Attempts you lost:$39200</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;">Finished Up:42, Finished Down:8, Lost Everything:335, Hit Goal:115</span><br />
<br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;">This a my Java based simulation:</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<span style="font-family: Arial, Helvetica, sans-serif;"> public void test() {</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> int simCount=500;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> int hitGoal=0;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> int lostEverything=0;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> int finishedUp=0;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> int finishedDown=0;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> int totalLost=0;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> for (int sim = 0; sim < simCount; sim++) {</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> int minBet = 10;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> int startingPurse = 200;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> int chanceOfWinning = 43;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> int chanceOfTying = 8;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> int curBet = minBet;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> int purse = startingPurse;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> int maxHands = 200;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> int handCount = 0;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> int topPurse = 0;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> int topHand = 0;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> int maxBet = 0;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> int goal = 400;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> int winningCombos[] = new int[100];</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> for (int i = 0; i < 100; i++) {</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> winningCombos[i] = 0;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> }</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> for (int i = 0; i < chanceOfWinning; i++) {</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> int num = (int) Math.floor(Math.random() % 100);</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> while (winningCombos[num] == 1) {</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> num = (int) Math.floor(Math.random() * 10000 % 100);</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> }</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> winningCombos[num] = 1;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> }</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> for (int i = 0; i < chanceOfTying; i++) {</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> int num = (int) Math.floor(Math.random() % 100);</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> while (winningCombos[num] != 0) {</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> num = (int) Math.floor(Math.random() * 10000 % 100);</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> }</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> winningCombos[num] = 2;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> }</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> while (handCount++ < maxHands && purse > 0 && purse < goal) {</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> int num = (int) Math.floor(Math.random() * 10000 % 100);</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> if (winningCombos[num] == 1) {</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> purse += curBet;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> }</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> else if (winningCombos[num] == 2) {</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> }</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> else {</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> purse -= curBet;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> }</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> if (purse < startingPurse) {</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> curBet = startingPurse - purse + minBet;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> if (purse - curBet < 0) {</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> curBet = purse;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> }</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> }</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> else if(purse>startingPurse&&purse<startingPurse+(3*curBet)){</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> curBet = minBet;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> }</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> if (curBet > maxBet) {</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> maxBet = curBet;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> }</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> if (purse > topPurse) {</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> topPurse = purse;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> topHand = handCount;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> }</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> if(purse>startingPurse+(3*curBet)){</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> curBet*=2;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> }</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> }</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> System.out.println("------------------------------------------------");</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> System.out.println("Sat down at a $" + minBet + " minimum table with $" + startingPurse);</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> System.out.println("Finished after " + (handCount - 1) + " hands with $" + purse);</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> System.out.println("Has a maximum of $" + topPurse + " on hand " + topHand);</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> System.out.println("Most bet on a hand $" + maxBet);</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> if(purse>startingPurse){</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> if(purse>=goal){</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> hitGoal++;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> }</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> else{</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> finishedUp++;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> }</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> }</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> else{</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> if(purse==0){</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> lostEverything++;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> }</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> else{</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> finishedDown++;</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> }</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> }</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> totalLost+=(200-purse);</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> }</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> System.out.println("------------------------------------------------");</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> System.out.println("After "+simCount+" Attempts you lost:$"+totalLost);</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> System.out.println("Finished Up:"+finishedUp+", Finished Down:"+finishedDown+", Lost Everything:"+lostEverything+", Hit Goal:"+hitGoal);</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"> }</span><br />
<span style="font-family: Arial, Helvetica, sans-serif;"><br /></span>
<br />Wublagameshttp://www.blogger.com/profile/04081464037116756026noreply@blogger.com0