Matlab Blackjack Report

From ENGR005_2012
Revision as of 19:25, 12 December 2012 by Mhirsh1 (Talk | contribs)

Jump to: navigation, search

By: Maxwell Sacks & Matthew Hirsh

Table of Contents

Abstract

Blackjack is one of the most popular card games in the world with relatively simple rules. The player must try to beat the dealer by having a higher score without going over 21 points. In this project, are goal was to recreate a blackjack simulator. First we read about the casino rules for blackjack where the player is against the dealer. Next, we planned out our project by thinking of what programs we would need to make and implement. After we had written all the programs, we did many test and added more lines of code to make sure that everything was working properly.

Introduction

Our main goal for this final project was to create an accurate Blackjack simulator. Understanding how to efficiently and effectively use Matlab was often frustrating through the year, so we wanted to use this final project as a way to get extra practice with the program. We wanted to better understand coding techniques and thought making a game like blackjack would be a fun way to do so. Since blackjack is a betting game, we thought it would be interesting to create a simulator where we can bet chips instead.

Background/Theory

Extended Rules of Blackjack

As briefly mentioned, in order to win blackjack against a dealer, the player must have more points than the dealer without going over 21 points. The player and dealer are both felt two cards but only one of the dealer's is faced up initially. Cards are worth their number value with jacks through kings also being ten points and aces can be eleven or one points depending on which works better. First, it it the player's turn and the user can decide to hit (get another card) or stand (end their turn). If the player goes over 21 points, he/she busts and automatically loses. Otherwise, it will then be the dealer's turn who will flip over his second card and must continue to hit until he either busts or has 17 points or greater. If neither the player or dealer bust, then the winner is the person with more points and that person will win the bet. It the player gets a blackjack, which is a ten-value card along with an ace, the player automatically wins 1.5 times his bet. If the player and dealer tie a round, then the bet is split and nobody loses or gains money.

Programming Ideas

After fully understanding the rules of blackjack, it immediately became clear than many if statements and while loops were going to be needed. If and else if statement will only execute if specific conditions are met, otherwise the program will skip that portion of the code. This is important because, for example, we would want the round to end right away if the player goes over 21 points because there would be no use in having the dealer go though his turn if that condition is met. While loops are indefinite loops that will continue to execute until certain conditions are changed. These were also important to the coding progress because, for example, when we ask the user to input a bet, a while loop will continue to ask the user for a valid bet until the bet is greater than the minimum bet but less than the total number of chips the player has.

Completed Project Design