# Introductory Java Project, Blackjack

Implement a blackjack cards game with betting between 1 user and the computer (dealer). We will use a deck of playing cards with the following cards 2<3<...<10<J<Q<K<A of: hearts < diamonds < clubs < spades. At the beginning of the game, the user starts with \$20 and can bet at most 2 dollars per game (i.e., the user can only bet \$1 or \$2). At the beginning of each round, the user places his bet in his "betting box". The user box is dealt an initial hand of two cards visible to the user. The computer/dealer's hand receives its first card face up, and its second card face down immediately (the hole card), which the computer does not reveal unless it makes the its hand a blackjack.

The user's object is to win money by creating card totals which will turn out to be higher than the dealer's hand, but without exceeding 21 ("busting"/"breaking"). The user must choose whether to "hit" (take a card), "stand" (end their turn), "double" (double wager, take a single card and finish), "split" (if the two cards have the same value (i.e., rank, e.g., the player can split if he has 2 queens), separate them to make two hands) or "surrender" (give up a half-bet and retire from the game).

Once the player splits, he is only allowed to play hit and stand. The bets are made before the choices of the player, so it is considered the same for both hands in the case of a split. If one hand looses, then the player continues with the other hand. If both hands win, then the player wins double the bet.

Number-cards count as their natural value; the jack, queen, and king (also known as "face cards" or "pictures") count as 10; aces are valued as either 1 or 11 (i.e., the program should sum up with both values (1 and 11) for Ace and take the value that makes the sum less or equal than 21, but closer to 21.) If the hand value exceeds 21 points, it busts, and all bets on it are immediately forfeit. Details about player decisions are available here: [url removed, login to view]

Check that the same cards are not distributed as duplicates in the same game round!

After the user finished playing, the dealer's hand is resolved by drawing cards until the hand busts or achieves a value of 17 or higher. The dealer never doubles, splits nor surrenders. If the dealer busts, then the user wins. If the dealer does not bust, the user wins the bet if his hand is higher than the computer's, and loses if it is lower. In the case of a tied score, known as "push" or "standoff", bets are normally returned without adjustment. Wins are paid out at 1:1, or equal to the wager, except for winning blackjacks, which are traditionally paid at 3:2 (meaning the player receives three dollars for every two bet), or one and a half times the wager. Aces are valued 11 by the computer.

Your game should play 10 hands and print the purse of the user.

The number of points possible for the project are 50.

- generate hands without duplicates = 15 points

- game framework (stand, hit, double, split, next = 3 points each) = 15 points

- betting, comparing hands (busting) and keeping the score = 10 points

- GUI: 10 points

Total points: 50

Playing cards images attached: GNU Documentation License. Note to attach the images to the draft code: create a new directory in your project root named images. Please put all the images from inside the zip file in that directory. No additional directory structure is required.

Skills: Java

( 2 reviews ) Flushing, United States

Project ID: #4012286

## 11 freelancers are bidding on average \$65 for this job

it2051229

Hi i can provide you a unique solution for this. I have here the stuff you need.

\$65 USD in 0 days
(169 Reviews)
6.1
samitXI

consider it done~~~ just need 2 hrs maximum

\$65 USD in 0 days
(64 Reviews)
5.8
oanagoge

I have been programming in Java for over 5 years and I have developed several card games in the process. Your description of your needs is very clear and I am confident that I can do this well in less than 3 days, incl More

\$65 USD in 3 days
(10 Reviews)
4.0
rkkamlesh007

Hi, I have good experience of java programming.

\$65 USD in 7 days
(0 Reviews)
0.0
siblance

Hi! I have 8 years experience with Java, and will be able to complete this with highest quality. I've checked your code - and I can improve it. I will split the code into few classes, GUI on swing will be in separa More

\$65 USD in 14 days
(0 Reviews)
0.0
mcraciunescu

I can do this in less or no [url removed, login to view] shouldn't take me more than 1 day.I'm a Java developer and I've done this already as a personal project ,but without GUI.

\$65 USD in 5 days
(0 Reviews)
0.0
Yarh

I am newbee, but wanna try:)

\$65 USD in 3 days
(0 Reviews)
0.0

Hello, I would like to help you with the solution. I have a team of four and we are all very enthusisastic to make this program.

\$65 USD in 5 days
(0 Reviews)
0.0
U2nQ43hUN

We are freelance software developers. If you contact me I can give a quote for your project and we can discuss the details. <b><i>Removed by Admin</i></b>

\$65 USD in 1 day
(0 Reviews)
0.0
danthyman

I'm a Senior College Student and have written similar programs before. There is no need to change the GUI or layout of the project as some have suggested. I can take what you got and make it functioning in no time and More

\$65 USD in 7 days
(0 Reviews)
0.0
rjrleygo

Hi, I can do this for you. Please see PM.

\$65 USD in 1 day
(0 Reviews)
0.0