Make sure that when a user makes a correct guess all the matching letters are

Make sure that when a user makes a correct guess all

• Homework Help
• 77
• 98% (246) 240 out of 246 people found this document helpful

This preview shows page 73 - 76 out of 77 pages.

---. Make sure that when a user makes a correct guess, all the matching letters are filled in. For example, if the word is banana and the user guesses a , all three a characters should be filled in. Answer: A sample solution follows Pseudocode: start Declarations num x num numCorrect num LENGTH = 8 string WORD[LENGTH] = “C”, “O”, “M”, “P”, “U”, “T”, “E”, “R” string hiddenWord[LENGTH] = “-”,“-”,“-”,“-”, “-”,“-”,“-”,“-” string guess getReady() while numCorrect not equal to LENGTH detailLoop() endwhile finishUp() stop getReady() numCorrect = 0 output hiddenWord output “Please guess a letter” input guess return detailLoop() x = 0 while x < LENGTH if WORD[x] = guess then numCorrect = numCorrect + 1 hiddenWord[x] = guess 73
Programming Logic and Design, 8e Solutions 6- endif x = x + 1 endwhile output hiddenWord if numCorrect not equal to LENGTH output “Please guess a letter” input guess endif return finishUp() output “You guessed the word!” output hiddenWord return 5. Create two parallel arrays that represent a standard deck of 52 playing cards. One array is numeric and holds the values 1 through 13 (representing Ace, 2 through 10, Jack, Queen, and King). The other array is a string array that holds suits (Clubs, Diamonds, Hearts, and Spades). Create the arrays so that all 52 cards are represented. Then, create a War card game that randomly selects two cards (one for the player and one for the computer) and declares a winner or a tie based on the numeric value of the two cards. The game should last for 26 rounds and use a full deck with no repeated cards. For this game, assume that the lowest card is the Ace. Display the values of the player’s and computer’s cards, compare their values, and determine the winner. When all the cards in the deck are exhausted, display a count of the number of times the player wins, the number of times the computer wins, and the number of ties. Here are some hints: Start by creating an array of all 52 playing cards. Select a random number for the deck position of the player’s first card and assign the card at that array position to the player. Move every higher-positioned card in the deck “down” one to fill in the gap. In other words, if the player’s first random number is 49, select the card at position 49 (both the numeric value and the string), move the card that was in position 50 to position 49, and move the card that was in position 51 to position 50. Only 51 cards remain in the deck after the player’s first card is dealt, so the available card array is smaller by one. In the same way, randomly select a card for the computer and “remove” the card from the deck. Answer: A sample solution follows Pseudocode: start Declarations num x num y 74
Programming Logic and Design, 8e Solutions 6- num limit num index num playerCard num playerCardNum num computerCard num computerCardNum num playerWin = 0 num computerWin = 0 num tie = 0 string playerCardSuit string computerCardSuit num LENGTH = 52 num GROUPS = 4 num ROUNDS = 26 num BOUNDS[GROUPS] = 0, 13, 26, 39 num cards[LENGTH] = 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52