Question

import java.util.Scanner; import java.util.Random; public class ScoreDice { private Random r; public ScoreDice(long seed) { r...

import java.util.Scanner;
import java.util.Random;

public class ScoreDice {
private Random r;

public ScoreDice(long seed) {
r = new Random(seed);
}

public int rollD6() {
return r.nextInt(6) + 1;
}

public int score() {
int roll1 = rollD6();
int roll2 = rollD6();
return scoreWithNumbers(roll1, roll2);
}
  
// You will need to write a static method named scoreWithNumbers.
// scoreWithNumbers returns a score based on the values
// of its inputs, as such:
//
// - If both inputs are 1 or if both inputs are 6, then
// the returned score is 10
// - If both inputs are the same (but not 1 or 6), then
// the returned score is 8
// - If the inputs are different, the score is whatever the
// smaller value is (e.g., if given 3 and 4, it returns 3).
//
// TODO - write your code below this comment.
public static int scoreWithNumbers(int a, int b){
if ( a != b){
return Math.min(a,b);
}
if (( a == 1 && b == 1) || (a == 6 && b == 6)){
return 10;
}
else if ( a == b){
return 8;
}
return 0;
}
  

public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("Enter seed: ");
long seed = input.nextLong();
ScoreDice scoreDice = new ScoreDice(seed);
System.out.println("Score: " + scoreDice.score());
}
}

NEED HELP WITH TEST CODE

import static org.junit.Assert.assertEquals;
import org.junit.Test;

public class ScoreDiceTest {
    @Test
    public void testBoth6() {
        assertEquals(10, ScoreDice.scoreWithNumbers(6, 6));
    }
    
    // You must write at least FOUR more tests, one for each unique
    // behavior that scoreWithNumbers can show.  The test above
    // already tests for one of five possible behaviors; you must write
    // tests for the other four.  You may define redundant tests, but
    // you will receive no extra credit for them.
    //
    // If you're not sure you hit all the behaviors of interest, feel
    // free to ask us!
    //
    // TODO - write your code below this comment.
}

Homework Answers

Answer #1

Here are the 4 more test cases which will test for different cases.

Case 1: When both the inputs are 1, it should return 10.

Case 2: When both are equal but not 1 or 6, it should return 8.

Case 3: When inputs are not equal then function should return minimum input, in this case first argument is minimum.

Case 4: When inputs are not equal then function should return minimum input, in this case second argument is minimum.

Else everything in the program is correct.

Code:

  @Test

    public void testBoth1() {

        assertEquals(10, ScoreDice.scoreWithNumbers(1, 1));

    }

    @Test

    public void testBothEqualButNot6or1() {

        assertEquals(8, ScoreDice.scoreWithNumbers(2, 2));

    }

    @Test

    public void testFirstArgumentIsMin() {

        assertEquals(3, ScoreDice.scoreWithNumbers(3, 5));

    }

    @Test

    public void testSecondArgumentIsMin() {

        assertEquals(3, ScoreDice.scoreWithNumbers(5, 3));

    }

Code screenshot.

Know the answer?
Your Answer:

Post as a guest

Your Name:

What's your source?

Earn Coins

Coins can be redeemed for fabulous gifts.

Not the answer you're looking for?
Ask your own homework help question
Similar Questions
import java.util.Scanner; public class InRange { private int min; private int max; public InRange(int initialMin, int...
import java.util.Scanner; public class InRange { private int min; private int max; public InRange(int initialMin, int initialMax) { min = initialMin; max = initialMax; } // You need to write two instance methods: // 1.) A method named inRange, which takes an int. // This returns true if the int is within the given range // (inclusive), else false. // // 2.) A method named outOfRange which takes an int. // This returns false if the int is within the...
import java.util.Stack; import java.util.Scanner; class Main { public static void main(String[] args)    {       ...
import java.util.Stack; import java.util.Scanner; class Main { public static void main(String[] args)    {        Stack<Integer> new_stack = new Stack<>();/* Start with the empty stack */        Scanner scan = new Scanner(System.in);        int num;        for (int i=0; i<10; i++){//Read values            num = scan.nextInt();            new_stack.push(num);        }        int new_k = scan.nextInt(); System.out.println(""+smallerK(new_stack, new_k));    }     public static int smallerK(Stack s, int k) {       ...
Fix the program: what if the input is three? import java.util.Scanner public class Test { public...
Fix the program: what if the input is three? import java.util.Scanner public class Test { public static void main(String[] args) { Scanner in = new Scanner(System.in); System.out.print("Enter an integer: "); int m = in.nextInt(); System.out.print("Enter another integer: "); int n = in.nextInt(); System.out.println(m + " " + n); } }
import java.util.Scanner; import java.util.Random; public class DiceRoll {    public static final int SIDES = 6;...
import java.util.Scanner; import java.util.Random; public class DiceRoll {    public static final int SIDES = 6;    public static void main(String[] args) {        // TODO Auto-generated method stub        System.out.println("Enter the number of times a 6 sided die should be rolled ");        Scanner keyboard = new Scanner(System.in);        Random r = new Random();               int times = keyboard.nextInt();        boolean valid = false;        while(!valid) {           ...
import java.util.Scanner; public class AroundTheClock {    public static void main(String[] args)    {       ...
import java.util.Scanner; public class AroundTheClock {    public static void main(String[] args)    {        Scanner input = new Scanner(System.in);        int departureTime = input.nextInt();        int travelTime = input.nextInt();        int arrivalTime;            departureTime =12;            departureTime = 0;            arrivalTime = (int) (departureTime + travelTime);            (arrivalTime = (arrivalTime >=12));            if (arrivalTime = arrivalTime %12)            {            System.out.println(arrivalTime);...
import java.util.Scanner; import java.io.*; public class P1 { static final int ROW = 1000; static final...
import java.util.Scanner; import java.io.*; public class P1 { static final int ROW = 1000; static final int COL = 667; public static void readImage(int[][][] startImage, String fileName) { Scanner inputF = new Scanner(fileName); int row = 0, col = 0; int line = 1; while (inputF.hasNext()) { if (line <= 4) { inputF.nextLine(); line++; } else { line += 3; if (col < COL) { startImage[row][col][0] = inputF.nextInt(); startImage[row][col][1] = inputF.nextInt(); startImage[row][col][2] = inputF.nextInt(); col++; } else { row++; col...
please fix code to delete by studentname import java.util.Scanner; public class COurseCom666 {     private String...
please fix code to delete by studentname import java.util.Scanner; public class COurseCom666 {     private String courseName;     private String[] students = new String[1];     private int numberOfStudents;     public COurseCom666(String courseName) {         this.courseName = courseName;     }     public String[] getStudents() {         return students;     }     public int getNumberOfStudents() {         return numberOfStudents;     }     public void addStudent(String student) {         if (numberOfStudents == students.length) {             String[] a = new String[students.length + 1];            ...
import java.util.Scanner; public class FindMinLength { public static int minLength(String[] array) { int minLength = array[0].length();...
import java.util.Scanner; public class FindMinLength { public static int minLength(String[] array) { int minLength = array[0].length(); for (int i = 0; i < array.length; i++) { if (array[i].length() < minLength) minLength = array[i].length(); } return minLength; } public static void main(String[] args) { Scanner in = new Scanner(System.in); String[] strings = new String[50]; for (int i = 0; i < strings.length; i++) { System.out.print("Enter string " + (i + 1) + ": "); strings[i] = in.nextLine(); } System.out.println("Length of smallest...
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new...
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); // Read the input string String input = sc.nextLine(); BalancedParentheses bp = new BalancedParentheses(); // Print whether the string has balanced parentheses System.out.println(bp.hasBalancedParentheses(input)); } } class BalancedParentheses { public boolean hasBalancedParentheses(String input) { // Remove this and implement code throw new UnsupportedOperationException(); } }
import java.io.PrintStream; import java.util.Arrays; public class joker { public static int smallest(int[] v1, int[] v2) {...
import java.io.PrintStream; import java.util.Arrays; public class joker { public static int smallest(int[] v1, int[] v2) { return 0; } public static int[] convert1(String str) { return new int[1]; } public static String convert2(int[] v) { return ""; } public static void main(String[] args) { testSmallest(); testConvert(); } public static void testSmallest() { System.out.println("Testing your method smallest(...)"); int[][] testVectors1 = new int[][]{{1, 2, 3}, {1, 2, 3, 4}, {1, 2, 3}, {1, 2, 3}, {2, 3, 4}}; int[][] testVectors2 = new...
ADVERTISEMENT
Need Online Homework Help?

Get Answers For Free
Most questions answered within 1 hours.

Ask a Question
ADVERTISEMENT