Solution Review

Let’s look at the solution of the problem from the last lesson.

Task I: Generate the secret number

The task was to generate a random number to be guessed by the player.

We can use the formula Math.random() * (max - min + 1) to generate a random value between 0 and 100 (inclusive). Our max value is 100 and our min is 0.

Press + to interact
//Generating a random integer between 0 and 100 inclusive
int secret_number = (int) (Math.random() * (100 - 0 + 1));

Task II: Implement the game logic

The task was to check for a win, and if the player doesn’t meet the win condition, give them hints about how near or far their number is from the secret number.

Press + to interact
int secret_number = (int) (Math.random() * (100 - 0 + 1)); //from last part
int userGuessNumber = 0;
while(true){
userGuessNumber = takeInput(userGuessNumber);
if (userGuessNumber < secretNumber)
{
System.out.println("Your guessed number is smaller.");
}
else if (userGuessNumber > secretNumber)
{
System.out.println("Your guessed number is greater.");
}
else
{
System.out.println("Yay, you won!");
return;
}
}
  • Line 4: The while(true) ...