191k views
5 votes
** MUST BE PSEUDOCODE FOR CORAL**

I AM STUCK I GOT A 5/10 IM NOT SURE WHAT I AM MISSING IN MY CODE. PLEASE HELP

The provided code is suppose to be for a guessing game between two players. In this game, player 1 picks the number of guess attempts and a whole number value to be guessed. No indication is given if player 2 has gotten the value guessed correctly, as player 2 is expected to make all of the guesses and find out if they got it right at the end.

However the code provided does not function as expected. The expectation is that the function check_guess() will allow enable to get the value from player 1 and player 2 and return 1 if the value matches and 0 if it does match.

Player 1 will give a specific number of attempts to guess the number and the number being guessed can be any value as represented by the first two numbers entered into the input. The remaining inputs represent the guess of the values by player 2.

User MasterAM
by
7.7k points

1 Answer

6 votes

Answer:

There seems to be an error in the provided code. Specifically, the condition in the while loop is incorrect: while count >= guesses should be while count < guesses. This is causing the loop to never execute, so only the initial values of player1 and found are being checked, which is why the output is always "Player 2 Did Not Guess the Number".

Here's the corrected code in pseudo code:

Function check_guess(integer player1, integer player2) returns integer answer

if player1 == player2

answer = 1

else

answer = 0

Function Main() returns nothing

integer player1

integer player2

integer guesses

integer found

integer count

guesses = Get next input

player1 = Get next input

found = 0

count = 0

while count < guesses

player2 = Get next input

if found != 1

found = check_guess(player1, player2)

count = count + 1

if found == 1

Put "Player 2 Found the Number: " to output

Put player1 to output

else

Put "Player 2 Did Not Guess the Number: " to output

Put player1 to output


With this corrected code, the output for the provided inputs will be as follows:

Input: 10 5 1 2 3 4 5 6 7 8 9 10

Expected Output: Player 2 Found the Number: 5

Input: 7 -7 -1 -2 -3 -4 -5 -6 -7

Expected Output: Player 2 Found the Number: -7

Input: 8 0 -4 -3 -2 -1 0 1 2 3

Expected Output: Player 2 Found the Number: 0

Input: 9 1.5 2.5 3.5 4.5 1.5 5.5 6.5 7.5 8.5 9.5

Expected Output: Player 2 Found the Number: 1

User PingZing
by
7.8k points