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