Question: Write a java program that allows the user to play a simple guessing game in which your program thinks up an integer and allows the
Write a java program that allows the user to play a simple guessing game in which your program thinks up an integer and allows the user to make guesses until the user gets it right. For each incorrect guess you will tell the user whether the right answer is higher or lower. Your program is required to exactly reproduce the format and behavior of the log of execution at the end of this write-up.
Your program should have the following static methods in addition to method main: A method that introduces the game to the user. A method to play one game with the user (just one game, not multiple games). A method to report overall results to the user. You may define more methods than this if you find it helpful, although you will find that the limitation that methods can return only one value will tend to limit how much you can decompose this problem.
When you ask the user whether or not to play again, you should use the next() method of the Scanner class to read a one-word answer from the user. You should continue playing if this answer begins with the letter y or the letter Y. Notice that the user is allowed to type words like yes. You are to look just at the first letter of the users response and see whether it begins with a y or n (either capitalized or not) to determine whether to play again.
Assume that the user always types an integer when guessing, that the integer is always in an appropriate range and that the user gives you a one-word answer beginning with y, Y, n or N when asked whether to play again. You may assume that no game involves more than 9,999 guesses.
You will notice at the end of the log that you are to report various statistics about the series of games played by the user. You are to report the total number of games played, the total number of guesses made (all games included), the average number of guesses per game, and the best (fewest) number of guesses used in any single game. The average number of guesses per games should be rounded to one decimal place.
You are not allowed to use the break statement or to have a return statement in a void method because these often lead to bad styleor use class fields to hold information..
Log of execution (user input bold and underlined) This program allows you to play a guessing game. I will think of a number between 1 and 100 and will allow you to guess until you get it. For each guess, I will tell you whether the right answer is higher or lower than your guess. I'm thinking of a number between 1 and 100... Your guess? 50 It's lower.
Your guess? 25 It's lower.
Your guess? 12 It's lower.
Your guess? 6 You got it right in 4 guesses
Do you want to play again? y
I'm thinking of a number between 1 and 100... Your guess? 50 It's lower.
Your guess? 25 It's lower.
Your guess? 12 It's higher.
Your guess? 18 You got it right in 4 guesses
Do you want to play again? YES
I'm thinking of a number between 1 and 100... Your guess? 50 It's higher. Your guess? 75 It's lower. Your guess? 62 It's higher. Your guess? 68 It's lower. Your guess? 65 It's higher. Your guess? 66 It's higher. Your guess? 67 You got it right in 7 guesses Do you want to play again? nope Overall results: total games = 3 total guesses = 15 guesses/game = 5.0 best game = 4
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
