Skip to content

Commit 5e9ce44

Browse files
authored
GuessNumberGame.java
1 parent 2817bb3 commit 5e9ce44

File tree

1 file changed

+46
-0
lines changed

1 file changed

+46
-0
lines changed
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
2+
import java.util.Scanner;
3+
import java.util.concurrent.ThreadLocalRandom;
4+
5+
public class GuessNumberGame {
6+
7+
private static final int MIN_NUMBER = 1;
8+
private static final int MAX_NUMBER = 1000;
9+
10+
public static void main(String[] args) {
11+
GuessNumberGame game = new GuessNumberGame();
12+
game.startGame();
13+
}
14+
15+
public void startGame() {
16+
boolean isUserGuessCorrect = false;
17+
int numberOfGuesses = 0;
18+
// computer thinks a number
19+
int computerNumber = getNumberByComputer();
20+
21+
// Program continues till user guesses the number correctly
22+
while (!isUserGuessCorrect) {
23+
int userNumber = getUserGuessedNumber();
24+
if (userNumber > computerNumber) {
25+
System.out.println("Sorry, the number you guessed is too high");
26+
} else if (userNumber < computerNumber) {
27+
System.out.println("Sorry, the number you guessed is too low");
28+
} else if (userNumber == computerNumber) {
29+
System.out.println("Congratulations! Your guess is correct!");
30+
isUserGuessCorrect = true;
31+
}
32+
numberOfGuesses++;
33+
}
34+
System.out.println("You found the number in " + numberOfGuesses + " guesses");
35+
}
36+
37+
public int getNumberByComputer() {
38+
return ThreadLocalRandom.current().nextInt(MIN_NUMBER, MAX_NUMBER + 1);
39+
}
40+
41+
public int getUserGuessedNumber() {
42+
Scanner sn = new Scanner(System.in);
43+
System.out.println("Please guess the number: ");
44+
return sn.nextInt();
45+
}
46+
}

0 commit comments

Comments
 (0)