Question
Using C++: Create a program to shuffle and deal a deck of cards. The program should consist of class Card, class DeckOfCards and a driver
Using C++:
Create a program to shuffle and deal a deck of cards. The program should consist of class Card, class DeckOfCards and a driver program with a main function. Class Card should provide:
Private data members face and suit of type int.
A constructor that receives two ints representing the face and suit and uses them to initialize the data members.
Two static arrays of strings representing the faces and suits.
A toString function that returns the Card as a string in the form "face of suit." You can use the + operator to concatenate strings.
Class DeckOfCards should contain:
An array of Cards named deck to store the Cards.
An integer currentCard representing the next card to deal.
A default constructor that initializes the Cards in the deck.
A shuffle function that shuffles the Cards in the deck. The shuffle algorithm should iterate through the array of Cards. For each Card, randomly select another Card in the deck and swap the two Cards.
A dealCard function that returns the next Card object from the deck.
A moreCards function that returns a bool value indicating whether there are more Cards to deal.
The driver program should create a DeckOfCards object, shuffle the cards, then deal the 52 cards.
Create a PokerHand class.
It should have a way to represent a 5 card poker hand as a private data member.
There should be a constructor method that randomly creates a 5 card poker hand from a DeckOfCards.
It should also have a method to set the poker hand to a particular 5 card hand that the programmer specifies.
It should have methods that return booleans and take in 0 arguments to accomplish each of the following:
Determine whether the hand contains a pair.
Determine whether the hand contains two pairs.
Determine whether the hand contains three of a kind
Determine whether the hand contains four of a kind
Determine whether the hand contains a flush
Determine whether the hand contains a straight
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started