Question: PLEASE DON'T COPY EXISTING CODES ON CHEGG. The program is in C++ I have attched my code for hw5, that's needed for this project The

PLEASE DON'T COPY EXISTING CODES ON CHEGG. The program is in C++ I have attched my code for hw5, that's needed for this project PLEASE DON'T COPY EXISTING CODES ON CHEGG. The program is in C++

I have attched my code for hw5, that's needed for this project The code for hw5 is as follows //card class

#ifndef Card_h

#define Card_h

#include

#include

#include

#include

#include

using namespace std;

//The enumerated data types

enum Suit

{

Clubs = 1,

Diamonds = 2,

Hearts = 3,

Spades = 4

};

//The Card class

class Card

{

private:

string description;

Suit suit;

int number;

public:

// default constructor

Card()

{

number = 0;

description = "";

}

// get function for suit

Suit getCardSuit()

{

return suit;

}

// set function for suit

void setCardSuit(Suit m_suit)

{

suit = m_suit;

}

int getCardNumber()

{

return number;

}

// set function for card

void setCardNumber(int m_num)

{

number = m_num;

}

// get function for description

string getCardDescription()

{

return description;

}

// set the card description

void setDescription(string m_description)

{

description = m_description;

}

// Overloaded operator

bool operator

{

if (suit

return true;

else if (suit > card2.suit)

return false;

else

{

if (number == 1)

return false;

else if (card2.number == 1)

return true;

else if (card2.number

return true;

}

return false;

}

};

#endif /* Card_h */ //Deck class

#ifndef Deck_h

#define Deck_h

#include "Card.h"

#include

#include

#include

#include

#include

using namespace std;

const int SIZE = 52;

Card card[52]; // card array

//Class Deck definition

class Deck

{

//private card variable

Card deckOfCards[SIZE];

public:

void initialize()

{

//the string to perform the description

string cardDesc;

char name[10];

int setFlag;

//the for loop to initialize the deck Of Cards

for (int i = 1; i

{

setFlag = 0;

if (i == 1 || i == 14 || i == 27 || i == 40)

{

cardDesc = "Ace";

setFlag = 1;

}

else if (i == 11 || i == 24 || i == 37 || i == 50)

{

cardDesc = "Jack";

setFlag = 1;

}

else if (i == 12 || i == 25 || i == 38 || i == 51)

{

cardDesc = "Queen";

setFlag = 1;

}

else if (i == 13 || i == 26 || i == 39 || i == 52)

{

cardDesc = "King";

setFlag = 1;

}

if (i

{

deckOfCards[i - 1].setCardSuit(Spades);

deckOfCards[i - 1].setCardNumber(i);

if (setFlag == 0)

{

(deckOfCards[i - 1].getCardNumber(), name, 10);

cardDesc = ((string)name);

}

cardDesc = " of Spades";

deckOfCards[i - 1].setDescription(cardDesc);

}

else if (i > 13 && i

{

deckOfCards[i - 1].setCardSuit(Hearts);

deckOfCards[i - 1].setCardNumber(i - 13);

if (setFlag == 0)

{

(deckOfCards[i - 1].getCardNumber(), name, 10);

cardDesc = ((string)name);

}

cardDesc = " of Hearts";

deckOfCards[i - 1].setDescription(cardDesc);

}

else if (i > 26 && i

{

deckOfCards[i - 1].setCardSuit(Diamonds);

deckOfCards[i - 1].setCardNumber(i - 26);

if (setFlag == 0)

{

(deckOfCards[i - 1].getCardNumber(), name, 10);

cardDesc = ((string)name);

}

cardDesc = " of Diamonds";

deckOfCards[i - 1].setDescription(cardDesc);

}

else

{

deckOfCards[i - 1].setCardSuit(Clubs);

deckOfCards[i - 1].setCardNumber(i - 39);

if (setFlag == 0)

{

(deckOfCards[i - 1].getCardNumber(), name, 10);

cardDesc = ((string)name);

}

cardDesc = (" of Clubs");

deckOfCards[i - 1].setDescription(cardDesc);

}

}

}

void shuffle()

{

Card cardObj;

int numRandm;

srand(time(NULL));

for (int i = 0; i

{

numRandm = rand() % 52;

cardObj = deckOfCards[i];

deckOfCards[i] = deckOfCards[numRandm];

deckOfCards[numRandm] = cardObj;

}

}

void deal()

{

Card hands[13][4];

for (int j = 0; j

{

for (int i = 0; i

{

hands[j][i] = deckOfCards[i + 4 * j];

}

}

sort(hands);

display(hands);

}

void sort(Card hands[13][4])

{

Card cardObj;

int j;

for (int itr = 0; itr

{

for (int i = 1; i

{

cardObj = hands[i][itr];

j = i - 1;

while (j >= 0 && hands[j][itr]

{

hands[j + 1][itr] = hands[j][itr];

j--;

}

hands[j + 1][itr] = cardObj;

}

}

}

void display(Card hands[13][4])

{

Suit suit;

int number;

cout

cout

for (int j = 0; j

{

for (int i = 0; i

{

suit = hands[j][i].getCardSuit();

number = hands[j][i].getCardNumber();

if (suit == 1)

cout

else if (suit == 2)

cout

else if (suit == 3)

cout

else

cout

if (number == 1)

cout

else if (number == 11)

cout

else if (number == 12)

cout

else if (number == 13)

cout

else

cout

}

cout

}

}

};

#endif /* Deck_h */ //Main program

#include "stdafx.h" #include "Card.h"

#include "Deck.h"

#include

using namespace std;

int main()

{

Deck deckOfCards;

deckOfCards.initialize();

int choice = 1;

do

{ //User menu

cout

cout

cout

cout

cout

cin >> choice;

switch (choice)

{

case 1:

cout

deckOfCards.shuffle();

cout

break;

case 2:

cout

deckOfCards.deal();

cout

break;

case 3:

cout

exit(0);

break;

default:

cout

}

} while (choice != 3);

}

Homework 6-Game of Hearts Before writing any code, review the rules of the game, page 2, and play a few games at playhearts-online.com Write a program that plays the card game of Hearts. Your program should build on your code for homework 5, including your overloaded

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!