Source of GuessTheNumbers.java


  1: //GuessTheNumbers.java

  3: import java.util.HashSet;
  4: import java.util.Scanner;

  6: public class GuessTheNumbers
  7: {
  8:     public static void main(String[] args)
  9:     {
 10:         Scanner scnr = new Scanner(System.in);
 11:         HashSet<Integer> numbersToGuess = new HashSet<Integer>();
 12:         int userGuess;

 14:         numbersToGuess.add(3);
 15:         numbersToGuess.add(5);
 16:         numbersToGuess.add(1);

 18:         System.out.print("Enter a number between 1 to 10 (0 to exit): ");
 19:         userGuess = scnr.nextInt();

 21:         while (userGuess != 0)
 22:         {
 23:             // Check user's guess
 24:             //if (numbersToGuess.contains(userGuess))
 25:             //{
 26:                 //numbersToGuess.remove(userGuess);
 27:             //Above 3 lines revised as the following line
 28:             if (numbersToGuess.remove(userGuess))
 29:             {
 30:                 System.out.println
 31:                 (
 32:                     "Good guess! "
 33:                     + numbersToGuess.size()
 34:                     + " number(s) remaining."
 35:                 );
 36:             }
 37:             else
 38:             {
 39:                 System.out.println
 40:                 (
 41:                     "Incorrect guess. "
 42:                     + numbersToGuess.size()
 43:                     + " number(s) remaining."
 44:                 );
 45:             }

 47:             System.out.println();

 49:             // Exit if no numbers are left, otherwise ask again
 50:             if (numbersToGuess.size() == 0)
 51:             {
 52:                 break;
 53:             }
 54:             else
 55:             {
 56:                 System.out.print
 57:                 (
 58:                     "Enter a number between 1 to 10 (0 to exit): "
 59:                 );
 60:                 userGuess = scnr.nextInt();
 61:             }
 62:         }

 64:         // Print victory/failure message
 65:         if (userGuess != 0)
 66:         {
 67:             System.out.println("You won!");
 68:         }
 69:         else
 70:         {
 71:             System.out.println("Quitters always lose!");
 72:         }
 73:     }
 74: }