Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Most of us have played the \"high-low\" guessing game wherein one player picks a

ID: 3845527 • Letter: M

Question

Most of us have played the "high-low" guessing game wherein one player picks a number and the other player tries to guess what the number is; in this game, if the guessing player guesses less than the number, then the other player responds "too low," and if the player guesses more than the number, then the other player responds "too high." This keeps going until the guessing player correctly guesses the number.

Your task in this assignment is to implement such a guessing game using exceptions. Implement an exception-handling console application with the following:

Program generates random number that user tries to guess

User enters guess

Program generates tooHigh, tooLow or correct exception

Exception handler prints appropriate response to user and repeats b-d until correct guess

Explanation / Answer

HighLow.java

import java.util.Random;
import java.util.Scanner;

public class HighLow {

   public static void main(String[] args) {

       //Declaring variables
       int guessNum, randNum;

       // Scanner object is used to get the inputs entered by the user
       Scanner sc = new Scanner(System.in);
      
       // Creating a random Class object
       Random r = new Random();

       //Generating random number
       randNum = r.nextInt(100) + 1;

       //This loop continues to execute until the user enters correct number
       while (true) {

           /* This loop continues to execute until
           * the user enters a valid number between 1-100
           */
           while (true) {
               //Getting the number entered by the user
               System.out.print("Guess a number Between 1-100 :");
               guessNum = sc.nextInt();
               //Checking whether the user entered a valid number or not
               if (guessNum < 0 || guessNum > 100) {
                   System.out.println("** Invalid.Must be between 1-100 **");
                   continue;
               } else
                   break;
           }

           try {
               /* Based on the user entered number
               * generate the appropriate Exception
               */
               if (guessNum < randNum) {
                   throw new TooLowException("Too Low");
               } else if (guessNum > randNum) {
                   throw new TooHightException("Too High");
               } else {
                   throw new CorrectException("Correct");
               }
           } catch (CorrectException e) {
               break;
           } catch (Exception e) {
               continue;
           }
       }

   }

}

____________________

TooHightException.java

public class TooHightException extends Exception {

   public TooHightException(String str)
   {
       System.out.println(str);
   }
}

____________________

TooLowException.java

public class TooLowException extends Exception {
   public TooLowException(String str)
   {
       System.out.println(str);
   }
}

______________________

CorrectException.java

public class CorrectException extends Exception {
   public CorrectException(String str)
   {
       System.out.println(str);
   }

}

____________________

Output:

Guess a number Between 1-100 :200
** Invalid.Must be between 1-100 **
Guess a number Between 1-100 :99
Too High
Guess a number Between 1-100 :50
Too Low
Guess a number Between 1-100 :60
Too Low
Guess a number Between 1-100 :70
Too Low
Guess a number Between 1-100 :80
Too Low
Guess a number Between 1-100 :90
Too High
Guess a number Between 1-100 :85
Too Low
Guess a number Between 1-100 :87
Too Low
Guess a number Between 1-100 :89
Correct


_____________Could you rate me well.Plz .Thank You

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote