I need someone good in C++ AND LINUX or Unix to help upgrade my solitaire game
Key objective of code
1. Ask the user for the number of players (between two and four)
A. Validate and repeat asking until the user enters a valid number of players
2. Ask the user for each player's initials (two characters)
A. Validate and repeat asking until the user enters a string with exactly two characters
3. Create a 5-card hand for each player (randomize card selection)
4. Randomly assign a player to the first turn
5. Repeat the following procedure until one player has no cards
A. Show the up-card, the hand of each player, and the current turn (see details below).
B. Prompt the user for action D (to draw a card) or P (to place a card).
i. If something else is entered, inform of invalid choice and allow user to reenter.
C. If the user draws, add a card to their hand and move to the next turn.
D. If a user places, use the following procedure.
i. Ask the user for the color and numerical value of the card they want to place (in that order). User should enter a single character for color (B, G, R, or Y).
ii. If the user does not have the card they specified, inform the user and repeat the turn for that player.
iii. If the user has the card but cannot be played on the up-card, inform the user and repeat the turn for that player.
iv. If the user has the card and the card can be played, remove the card from the player's hand, set the new up-card to be the placed card, and move to the next player’s turn.
6. Print the name of the winning player