Advertisement
Shavit

P. 85 Ex. 5

Feb 4th, 2014
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.33 KB | None | 0 0
  1. // Shavit Borisov
  2. // CW
  3.  
  4. import java.util.Random;
  5. import java.util.Scanner;
  6.  
  7. public class GuessGame {
  8.  
  9.     public static void main(String[] args)
  10.    
  11.     {
  12.         String prize = "1 million dollars";
  13.         Scanner in = new Scanner(System.in);
  14.         Random rnd = new Random();
  15.        
  16.         guessForm player = new guessForm(prize);
  17.         guessForm computer = new guessForm(prize);
  18.        
  19.         while((player.isWin() == false) && computer.isWin() == false)
  20.         {
  21.             System.out.print("Your guess: ");
  22.             int guess = in.nextInt();
  23.             if(player.isGoodGuess(guess))
  24.                 System.out.println("Good guess");
  25.             else
  26.                 System.out.println("Bad guess");
  27.            
  28.             int r = rnd.nextInt(20) + 1;
  29.            
  30.             System.out.println("Computer's guess: " + r);
  31.            
  32.             if(computer.isGoodGuess(r))
  33.                 System.out.println("Good guess");
  34.             else
  35.                 System.out.println("Bad guess");
  36.         }
  37.         if(player.isWin() && computer.isWin())
  38.             System.out.println("You and the computer both win: " + player.getPrize());
  39.         else if(player.isWin())
  40.             System.out.println("You won: " + player.getPrize());
  41.         else if(computer.isWin())
  42.             System.out.println("The computer won: " + computer.getPrize());
  43.         else
  44.             System.out.println("You and the computer both lose: " + player.getPrize());
  45.         in.close();
  46.     }
  47. }
  48.  
  49. // Next class
  50.  
  51. import java.util.Random;
  52.  
  53. public class guessForm
  54. {
  55.     private String prize;
  56.     private int[] numbers;
  57.     private boolean[] guessedNumbers;
  58.    
  59.     private final int SIZE = 5;
  60.    
  61.     public guessForm(String prize)
  62.     {
  63.         this.prize = prize;
  64.         numbers = new int[SIZE];
  65.         guessedNumbers = new boolean[SIZE];
  66.         Random rnd = new Random();
  67.         boolean[] nums = new boolean[21];
  68.         for(int i = 0; i <= 20; i++)
  69.             nums[i] = false;
  70.         int r;
  71.         for(int i = 0; i < SIZE; i++)
  72.         {
  73.             r = rnd.nextInt(20) + 1;
  74.             while(nums[r] == true)
  75.                 r = rnd.nextInt(20) + 1;
  76.             nums[r] = true;
  77.             numbers[i] = r;
  78.             guessedNumbers[i] = false;
  79.         }
  80.     }
  81.    
  82.     public String getPrize()
  83.     {
  84.         return prize;
  85.     }
  86.    
  87.     public boolean isWin()
  88.     {
  89.         for(int i = 0; i < SIZE; i++)
  90.             if(guessedNumbers[i] == false)
  91.                 return false;
  92.         return true;
  93.     }
  94.    
  95.     public boolean isGoodGuess(int guess)
  96.     {
  97.         for(int i = 0; i < SIZE; i++)
  98.         {
  99.             if(numbers[i] == guess)
  100.             {
  101.                 if(!guessedNumbers[i])
  102.                 {
  103.                     guessedNumbers[i] = true;
  104.                     return true;
  105.                 }
  106.                 else
  107.                     return false;
  108.             }
  109.         }
  110.         return false;
  111.     }
  112. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement