Please consider offering answers and suggestions to help other students!
And if you fix a problem by following a suggestion here,
it would be great if other interested students could see a short
"Great, fixed it!" followup message.
import java.util.Scanner;
import java.util.Random;
import java.lang.Math;
public class Guess_the_Number {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("Enter your lower starting range number: ");
int num1 = sc.nextInt();
System.out.println("Enter you higher end range number: ");
int num2 = sc.nextInt();
System.out.println("Great! Now guess the secret number between " + num1 + " and " + num2 + ".");
Random r = new Random();
int secretNumber = r.nextInt(num1, num2);
int a = 2;
float num = (float) (Math.log(num2 - num1 + 1) / Math.log(a));
int numberGuesses = (int) Math.ceil(num);
System.out.println("You have " + numberGuesses + " tries.");
int count = 0;
while (count < numberGuesses) {
count++;
System.out.println("What is your guess? ");
int guess = sc.nextInt();
if (guess == secretNumber) {
System.out.println("Congrats! The number was " + secretNumber + " you did it in " + count + " tries!");
break;
}
if (guess > secretNumber) {
System.out.println("You guessed too high! Guess again.");
}
if (guess < secretNumber) {
System.out.println("You guessed too low! Try again.");
}
}
if (count > numberGuesses) {
System.out.println("Out of guesses! The number is " + secretNumber);
System.out.println("Better luck next time!");
}
}
}