Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Need some help creating an object and using it with the Number Guessing Game. I

ID: 3744083 • Letter: N

Question

Need some help creating an object and using it with the Number Guessing Game. I am completely lost.

1.      Start NetBeans and open the project named ch04_ex4_GuessingGame in the extra_ex_starts directory.

2.      Run the project and make sure it works correctly. Also, make sure you understand the code in the main method.

Create a class that stores the data for the game

3.      In the murach.games package, create a new class named NumberGame.

4.      In this class, create one instance variable for storing the upper limit of the number, a second for storing the number, and a third for the number of guesses the user has made.

5.      Add a constructor to the class that takes an integer value for the upper limit and uses it to set the upper limit instance variable. Then, generate the number that the user should try to guess and set that instance variable. You can copy and modify the relevant lines of code from the main method to do this. Finally, initialize the instance variable for the number of guesses to 1.

6.      Add get methods for all three instance variables. Use your IDE to do this if possible. You don’t need to create set methods.

7.      Add a method named incrementGuessCount that adds 1 to the instance variable for the number of guesses.

Use the class

8.      In the Main class modify the code so it uses the new object. For example, use the getUpperLimit method to display the upper limit to the user. Then, remove any unnecessary code.

9.      Run the project again and makes sure it still works correctly.

Add a second constructor and use it

10. In the NumberGame class, add a constructor to the class that takes no arguments. The code for this constructor can call the other constructor in this class and pass it a value of 50 for the upper limit.

11. In the Main class, modify the code so it uses the zero-argument constructor. Then, comment out the statements that get the upper limit from the user. These statements are no longer necessary since the constructor automatically sets the upper limit to 50.

12. Run the project again and makes sure it works correctly. It should set an upper limit of 50 by default.

This is the starting code:

package murach.games;

import java.util.Random;

import java.util.Scanner;

public class Main {

public static void main(String args[]) {

System.out.println("Welcome to the Number Guessing Game");

System.out.println();

Scanner sc = new Scanner(System.in);

// Get upper limit

System.out.print("Enter the upper limit for the number: ");

int upperLimit = Integer.parseInt(sc.nextLine());

System.out.println("OK, I'm thinking of a number between 0 and " +

upperLimit);

System.out.println();

  

// Generate a random number between 0 and the upperLimit variable

Random random = new Random();

int number = random.nextInt(upperLimit - 1) + 1;

  

int count = 1;

System.out.print("Enter your guess: ");

int guess = Integer.parseInt(sc.nextLine());

while (guess != number) {

if (guess < number) {

System.out.println("Your guess is too low. ");

} else if (guess > number) {

System.out.println("Your guess is too high. ");

}

count = count + 1;

System.out.print("Enter your guess: ");

guess = Integer.parseInt(sc.nextLine());

}   

System.out.println("Correct! ");

  

System.out.println("You guessed the correct number in " + count +

" guesses. ");

System.out.println("Bye!");

}

}

Explanation / Answer

// Hey. Here is your solution. Hope it helps you.

// Please do upvote if you find it useful.

// Code is tested, verified and works perfectly on IntelliJIdea IDE

// This is main.java File.

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

// This is class file NumberGame.java

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote