public class OperationsBetween { // You must define the following: ...

70.2K

Verified Solution

Question

Programming

public class OperationsBetween {  // You must define the following:  // 1.) Two private instance variables, min and max  //  // 2.) A constructor which takes initial values for  //   min and max  //  // 3.) An instance method named sum, which sums the  //   values between min and max and returns the  //   result. For example, if min = 3 and max = 5,  //   then this should return 12 (3 + 4 + 5). If  //   min is greater than max, then this should  //   return 0.  //  // 4.) An instance method named product, which  //   multiplies the values between min and max and  //   returns the result. For example, if min = 6  //   and max = 9, then this should return 3024  //   (6 * 7 * 8 * 9). If min is greater than  //   max, then this should return 1. A stub has  //   been provided that simply returns 1; this is  //   just to allow things to compile while you're  //   working on the sum method.  public int product() {    // You'll need to replace this code with something    // else to make product() work; this is just to make    // things compile while you work on sum()    return 1;  }  // DO NOT MODIFY main!  public static void main(String[] args) {    OperationsBetween between =      new OperationsBetween(Integer.parseInt(args[0]),                 Integer.parseInt(args[1]));    System.out.println(\"Sum: \" + between.sum());    System.out.println(\"Product: \" + between.product());  }}

Step 1: Get OperationsBetween.javaCompiling

Download the OperationsBetween.java file, and open it in jGrasp(or a text editor of your choice). This program takes twocommand-line arguments representing the minimum and maximum numberin a numeric range. Currently, the code does not compile. As afirst step, you need to get this code to compile. To this end,you'll need to implement the following:

  • Instance variables
  • Constructor
  • A “stub” for the sum method, which will allow the call to sumin the main method to compile. A stub has already been written forthe product method; you should write something similar forsum.

Once the code has the above elements and is compiling, you'reready to move on to the next step.

Step 2: Implement the sum Method

In the previous step, you wrote a stub for sum to get the codecompiling. Now replace the code in the stub with a loop that willcompute the sum between min and max. You will need to use a loopfor this purpose, and a for loop is likely the best fit. You shouldstart from min, and then iterate up to max, using a temporaryvariable that you increment along the way. You will also needanother variable to store the result. Comments in the file containfurther details.

Once sum (and only sum) is correctly implemented, you should seethe following output if run with the command-line arguments 34:

Sum: 7Product: 1

Step 3: Implement the product Method

Replace the code in the stub for product with a loop that willcompute the product between min and max. This code should lookvery similar to the code you wrote for sum. Furtherdetails are in the file.

Once both product and sum are correctly implemented, you shouldsee the following output if run with the command-line arguments 58:

Sum: 26Product: 1680

Further example output is shown below for the command-linearguments 3 2 (note that the minimum end of the range is greaterthan the maximum end of the range):

Sum: 0Product: 1

Further example output is shown below for the command-linearguments 3 3 (the minimum end of the range is equal to the maximumend of the range):

Sum: 3Product: 3
import static org.junit.Assert.assertEquals;import org.junit.Test;public class OperationsBetweenTest {  public static OperationsBetween makeOp(int min, int max) {    return new OperationsBetween(min, max);  }    @Test  public void testSumOutOfRange() {    assertEquals(0, makeOp(0, -1).sum());  }  @Test  public void testSumRange1() {    assertEquals(2, makeOp(2, 2).sum());  }  @Test  public void testSumRange2() {    assertEquals(5, makeOp(2, 3).sum());  }  @Test  public void testSumRange3() {    assertEquals(9, makeOp(2, 4).sum());  }  @Test  public void testProductOutOfRange() {    assertEquals(1, makeOp(0, -1).product());  }  @Test  public void testProductRange1() {    assertEquals(3, makeOp(3, 3).product());  }  @Test  public void testProductRange2() {    assertEquals(6, makeOp(2, 3).product());  }  @Test  public void testProductRange3() {    assertEquals(24, makeOp(2, 4).product());  }}

Answer & Explanation Solved by verified expert
4.1 Ratings (487 Votes)
public class OperationsBetween You must define the following 1 Two private instance variables min    See Answer
Get Answers to Unlimited Questions

Join us to gain access to millions of questions and expert answers. Enjoy exclusive benefits tailored just for you!

Membership Benefits:
  • Unlimited Question Access with detailed Answers
  • Zin AI - 3 Million Words
  • 10 Dall-E 3 Images
  • 20 Plot Generations
  • Conversation with Dialogue Memory
  • No Ads, Ever!
  • Access to Our Best AI Platform: Flex AI - Your personal assistant for all your inquiries!
Become a Member

Other questions asked by students