Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Still needing help with Exercise 4-4: Create an object and use it with the Number Guessing Game. I cannot seem to get it to work

Still needing help with Exercise 4-4: Create an object and use it with the Number Guessing Game. I cannot seem to get it to work correctly.

In this exercise, youll convert a number guessing game like the one described in exercise 3-3 so it uses some object-oriented features.

Review the project

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 dont 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.

The starting code is:

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!");

}

}

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Transact SQL Cookbook Help For Database Programmers

Authors: Ales Spetic, Jonathan Gennick

1st Edition

1565927567, 978-1565927568

More Books

Students also viewed these Databases questions

Question

1. What are the major sources of stress in your life?

Answered: 1 week ago