#include #include #include #include #include using namespace std; #define CLUB 0 #define DIAMOND 1 #define HEART 2 #define SPADE 3 #define CARD_TWO 0 #define CARD_THREE 1 #define CARD_FOUR 2 #define CARD_FIVE 3 #define CARD_SIX 4 #define CARD_SEVEN 5 #define CARD_EIGHT 6 #define CARD_NINE 7 #define CARD_TEN 8 #define CARD_JACK 9 #define CARD_QUEEN 10 #define CARD_KING 11 #define CARD_ACE 12 class Card { public: int suit; int rank; void showCard(); }; class Player { private: vector hand; public: void addCard(const Card& card); }; class Dealer { private: vector deck; vector players; public: Dealer(int playerCount); void setDefaultDeck(); void shuffleDeck(); void showAllCards(); void dealTopCard(int player); }; Dealer::Dealer(int playerCount) : players(playerCount) { setDefaultDeck(); } // method to fill for question 1 void Dealer::setDefaultDeck() { } // method to fill for question 2 void Dealer::shuffleDeck() { } // methods to fill for question 3 void Dealer::showAllCards() { } void Card:: showCard() { } // methods to fill for question 4 void Dealer::dealTopCard(int player) { } void Player::addCard(const Card& card) { } /* answer for question 5: Output: */ /* answer for question 6: Hashtable: Index 0, Value: Index 1, Value: Index 2, Value: Index 3, Value: Index 4, Value: Index 5, Value: Index 6, Value: Index 7, Value: Index 8, Value: Index 9, Value: Number of probes for each operation: insert 15: insert 16: insert 37: insert 25: insert 19: insert 26: remove 26: remove 37: insert 35: */ int f(int n) { if (n<=1) { return 1; } int s=1; return s+f(n-1)+f(n-1)+f(n-1); } /* answer for question 7: T(n) = (for n>1) T(1) = 2 T(2) = T(3) = T(4) = T(5) = T(n) is in O( ) */ #define PLAYERCOUNT 4 int main() { Dealer dealer(PLAYERCOUNT); dealer.dealTopCard(0); dealer.dealTopCard(1); dealer.dealTopCard(2); dealer.dealTopCard(3); dealer.dealTopCard(0); dealer.dealTopCard(1); dealer.dealTopCard(2); dealer.dealTopCard(3); dealer.showAllCards(); return 0; }