1) Create a card class in C++. The class should have the following features: 1) String for the card suit (Diamond, Heart, Spade, Club) 2) Number for the card value (1 to 13) 3) Assessors to get the card suit and card value individually. 4) Constructor to create a card from a suit and number. 5) Copy constructor to create a card from another card as a copy. 6) Ability to use the <, >, == and != operators, where < and > only compare the card value and not the suit. 7) Ability to print the card like this: 5 of Hearts (as an example) 8) Ability to use the + and - operators on two cards to produce an integer value (not another card). Assume + and - means add or subtract card values only. 9) Ability to use the = operator for assigning one card to equal another card. 2) Create a deck template class to use with your card class. (You can start with example one on the website). Add a method to shuffle the deck using any algorithm of your choice (it can be any simple algorithm).
## Deliverables
The main function should do the following things: 1) Create all 52 cards as in a standard deck of cards and insert them into the deck one by one. 2) Shuffle the deck. 3) Ask the user to pick any card 4) Randomly pick 5 cards. 5) If the user's card is among the 5 cards picked, they win. 6) If not, print the 5 cards.
## Platform
Note: For all classes create a header file, a cpp file, and and driver file. Important: You should submit your source files and executable file. All files should be able to compile on the "Apache server" without any error.
## Deadline information
Program must be finished and received by 1:30pm on Monday, September 9th.