Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

So I need the code for the blackjack game. I am still rusty with C++ and i reall

ID: 3631570 • Letter: S

Question

So I need the code for the blackjack game. I am still rusty with C++ and i really do not enjoy using it.
This lab requires you to design and implement a C++ program to simulate a game of Blackjack between two to four players. Your program must incorporate a two-dimensional array to represent the suit and the value of each card dealt to a player, keep track of which cards have been dealt to which player, and use a random-number generator to pick each card to be dealt to a player.

// Programmer: (put your name here)

// Course: COMP220

// Assignment: Two-Dimensional Arrays

// Description: The program will use a 2D array and a random-number
// generation to play Blackjack and keep track of a playing-card deck.

// Input: User data entry and a playing-card deck represented as a two-
// dimensional array

// Output: A screen display showing the current card hands of each player
// and the dealer, their score, win and lose status, and a final representation
// of the card deck after the game is over

#include <iostream>
#include <iomanip>
#include <windows.h>

using namespace std;

void main (void)
{
bool bPlayerDraw[5]; //Boolean to determine if player holds (F)

//or draws card (T)

char cPlay = 'N'; //Character variable for play game input
char cCardDeck[4][13]; //Character array representing the card deck
int iCard; //Card array index
//0 = 2 card
//1 = 3 card
//2 = 4 card
//3 = 5 card
//4 = 6 card
//5 = 7 card
//6 = 8 card
//7 = 9 card
//8 = 10 card
//9 = jack card
//10 = queen card
//11 = king card
//12 = ace card
int iNumberOfDraws = 0; //Number of rounds of card draws
int iSuit; //Suit array index

//0 = diamonds
//1 = hearts
//2 = clubs
//3 = spades

// ASCII character display reference for display card suit symbols
//3 = heart symbol
//4 = diamond symbol
//5 = club symbol
//6 = spade symbol

int iNumberOfPlayers = 0;//Number of players in current game
int iPlayerCount[5]; //Integer array to holder each player's count
//iPlayer[0] is always the dealer
int iHighestCount = 0; //Highest count for a single game
int k, m; //integer loop counters
srand(GetTickCount()); //Seed the random-number generator

//Main game loop
//Enter your code here…

This is what the output should be like.
Here is a sample of the finished program’s output.

Welcome to Honest Sam's Blackjack Table

Glad to have you back!

Enter the number of players in the game.
There must be at least one player but no more than four.
Number of players: 3

Dealer Player 1 Player 2 Player 3
Card 1: 5? 7? 4? Q?
Card 2: 5? K? 5? 2?
Card 3: J? 4? 6? 10?
Card 4: Hold Hold Q? Hold
Card 5: Hold Hold Hold Hold

Final: 20 21 25 22
Lose Win! Lose Lose

Display entire card deck, rows = suits, columns = card

0 = dealer card, 1 = Player 1 card, 2 = Player 2 card, etc.

2
3
4
5
6
7
8
9
10
J
Q
K
A
?
2
2
3
0
3
1
?
?
0
2
2
?
3
1
0
1
Welcome to Honest Sam's Blackjack Table

Do you feel lucky today?
Do you think you should take what you have left and go home?

Press Y or y to play or any other key to exit the game.

Explanation / Answer

Dear...

#include "stdafx.h"
#include <iostream>
#include <iomanip>
#include <windows.h>
using namespace std;

void deal(int ,bool [4][13],char [4][13],char [5][5][2]);
void printcards(int,char [5][5][2]);
void printdeck(bool[4][13],char[4][13]);

int main (void)
{
bool bPlayerDraw[5];
char cPlay = 'N';
char cCardDeck[4][13];

int iCard;
int iNumberOfDraws = 0;
int iSuit;
int iNumberOfPlayers = 0;
int iPlayerCount[5];
int iHighestCount = 0;

bool used[4][13];
char hand[5][5][2];
int k, m;
srand(GetTickCount());
for(k=0;k<4;k++)
for(m=0;m<13;m++)
{
cCardDeck[k][m]=(char)(m);
used[k][m]=false;
}
cout<<"How many players in the game (2-4)? ";
cin>>iNumberOfPlayers;
while(iNumberOfPlayers<2||iNumberOfPlayers>4)
{
cout<<"invalid entry ";
cout<<"How many players in the game (2-4)? ";
cin>>iNumberOfPlayers;
}
deal(iNumberOfPlayers,used,cCardDeck,hand);
printcards(iNumberOfPlayers,hand);
printdeck(used,cCardDeck);
system("pause");
return 0;
}

void deal(int players,bool used[4][13],char cCardDeck[4][13],
char hand[5][5][2])
{
int i,j,k,l;
for(i=0;i<=players;i++)
for(j=0;j<5;j++)
{
do
{
k=rand()%13;
l=rand()%4;
}
while(used[k][l]);
hand[i][j][0]=k;
hand[i][j][1]=l;
used[l][k]=true;
}
}

void printcards(int players,char hand[5][5][2])
{
int i,j;
string card[]={"2","3","4","5","6","7","8","9","10","jack","queen","king","ace"};
int code[]={4,3,5,6};
for(i=0;i<=players;i++)
{
if(i==0)
cout<<"Dealers hand ";
else
cout<<"Player "<<i<<"s hand ";
for(j=0;j<5;j++)
{
cout<<card[(int)hand[i][j][0]]<<" "<<(char)code[ (int)hand[i][j][1]]<<endl;
}
}
}

void printdeck(bool used[4][13],char cCardDeck[4][13])
{
int i,j;
string card[]={"2","3","4","5","6","7","8","9","10","jack","queen","king","ace"};
int code[]={4,3,5,6};
cout<<"Cards remaining in the deck ";
for(i=0;i<4;i++)
for(j=0;j<13;j++)
if(!used[i][j])
cout<<(char)code[i]<<" "<<card [j]<<endl;
}
do
{
k=rand()%13;
l=rand()%4;
}
while(CardDeck[l][k]!=' ');
CardDeck[l][k]=n;
}

void scoreCards(char c[4][13],int s[],int n)
{
int i,j,k,aces=0;
for(i=0;i<=n;i++)
{
aces=0;
s[i]=0;
for(j=0;j<4;j++)
for(k=0;k<13;k++)
{
if(c[j][k]==i)
if(k<9)
s[i]+=(k+2);
else if(k<12)
s[i]+=10;
else
aces++;
if(aces>0)
if(aces>1)
s[i]+=aces;
else
if(s[i]+11>21)
s[i]++;
else
s[i]+=11;
}
cout<<i<<" "<<s[i]<<" "<<j<<" "<<k<<endl;
}
}

void initCards(char CardDeck[][13],int& round,int& dealer,bool p[])
{
int i,k,m;
round=0;
dealer=rand()%4;
for(k=0;k<4;k++)
for(m=0;m<13;m++)
CardDeck[k][m]=' ';
for(i=0;i<5;i++)
p[i]=true;
}
int getPlayers()
{
int num;
cout<<"Welcome to Honest Sam's Blackjack Table ";
cout<<"Glad to have you back! ";
cout<<"Enter the number of players in the game. ";
cout<<"only one player. no more than four. ";
cout<<"Number of players: ";
cin>>num;

while(num<1||num>4)
{
cout<<"invalid entry ";
cout<<"only one player. no more than four. ";
cout<<"How many players in the game (1-4)? ";
cin>>num;
}
return num;
}
void deal(int players,char CardDeck[4][13])
{
int i,j,k,l;
for(i=0;i<=players;i++)
{
for(j=0;j<2;j++)
{
do
{
k=rand()%13;
l=rand()%4;
}
while(CardDeck[l][k]!=' ');
CardDeck[l][k]=i;
}
}
void printcards(int players,char CardDeck[4][13],int round)
{
int i,j,k;
string card[]={"2","3","4","5","6","7","8","9","10","jack","queen","king","ace"};
int code[]={4,3,5,6};
bool d=false;
if(round==100)
d=true;
for(i=0;i<=players;i++)
{
if(i==0)
cout<<"Dealers hand ";
else
cout<<"Player "<<i<<"s hand ";
for(j=0;j<4;j++)
for(k=0;k<13;k++)
if(CardDeck[j][k]==i)
if(i!=0||d)
cout<<(char)code[j]<<" "<<card[k]<<endl;
else
d=true;
}
}

for(i=0;i<=players;i++)
{
for(j=0;j<5;j++)
{
do
{
k=rand()%13;
l=rand()%4;
}
while(used[k][l]);
hand[i][j][0]=k;
hand[i][j][1]=l;
used[l][k]=true;
}
}

void printcards(int players,char hand[5][5][2])
{
int i,j;
string card[]={"2","3","4","5","6","7","8","9","10","jack","queen","king","ace"};
int code[]={4,3,5,6};
for(i=0;i<=players;i++)
{
if(i==0)
cout<<"Dealers hand ";
else
cout<<"Player "<<i<<"s hand ";
for(j=0;j<5;j++)
{
cout<<card[(int)hand[i][j][0]]<<" "<<(char)code[ (int)hand[i][j][1]]<<endl;
}
}
}

void printdeck(bool used[4][13],char cCardDeck[4][13])
{
int i,j;
string card[]={"2","3","4","5","6","7","8","9","10","jack","queen","king","ace"};
int code[]={4,3,5,6};
cout<<"Cards remaining in the deck ";
for(i=0;i<4;i++)
for(j=0;j<13;j++)
if(!used[i][j])
cout<<(char)code[i]<<" "<<card[j]<<endl;
}

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote