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

How to make a test class testing my class that I\'ve made.. I dont know what i a

ID: 3888724 • Letter: H

Question

How to make a test class testing my class that I've made..

I dont know what i am doing wrong. But i have to have an actual and expected variable and printing those out. Please help!

I need at least four seperate tests as well testing positive and negative values

public class Rational {

double numerator = 0;
double denominator = 1;

public Rational(double n,double d){
numerator=n;
denominator=d;
}

public void setNumerator(double value) {
this.numerator = value;
}
public void setDenominator(double value) {
this.denominator = value;
}
public double getNumerator() {
return this.numerator;
}
public double getDenominator() {
return this.denominator;
}


public Rational(double num, double denom) {
numerator = num;
denominator = denom;
}

public Rational addRational(Rational r) {

double num = numerator * r.getDenominator()+ r.getNumerator() * denominator;
double den = denominator * r.getDenominator();
Rational r2=new Rational(num,den);
return r2;
}

public double subRational(Rational r){
numerator = numerator * r.getDenominator() - r.getNumerator() * denominator;
denominator = denominator * r.getDenominator();


}

public void mulRational(Rational r) {
numerator = numerator * r.getNumerator();
denominator = denominator * r.getDenominator();
}

public void divRational(Rational r) {
numerator = numerator * r.getDenominator();
denominator = denominator * r.getNumerator();
}
}

Explanation / Answer

Note: I just add toString() method to ur Rational class inoder to neatly display the output.And also we can add reduce() method to display the Rational numbers output in lowest terms.But as u didnt asked it..Am not adding it..Thank You.

__________________

Rational.java

public class Rational {
double numerator = 0;
double denominator = 1;
public Rational(double n, double d) {
numerator = n;
denominator = d;
}
public void setNumerator(double value) {
this.numerator = value;
}
public void setDenominator(double value) {
this.denominator = value;
}
public double getNumerator() {
return this.numerator;
}
public double getDenominator() {
return this.denominator;
}
public Rational addRational(Rational r) {
double num = numerator * r.getDenominator() + r.getNumerator() * denominator;
double den = denominator * r.getDenominator();
Rational r2 = new Rational(num, den);
return r2;
}
public Rational subRational(Rational r) {
double num = numerator * r.getDenominator() - r.getNumerator() * denominator;
double den = denominator * r.getDenominator();
Rational r2 = new Rational(num, den);
return r2;
}
public Rational mulRational(Rational r) {
double num = numerator * r.getNumerator();
double den = denominator * r.getDenominator();
Rational r2 = new Rational(num, den);
return r2;
}
public Rational divRational(Rational r) {
double num = numerator * r.getDenominator();
double den = denominator * r.getNumerator();
Rational r2 = new Rational(num, den);
return r2;
}

// -----------------------------------------------------------------
// Returns this rational number as a string.
// -----------------------------------------------------------------
public String toString() {
String result;
if (numerator == 0)
result = "0";
else if (denominator == 1)
result = numerator + "";
else
result = numerator + "/" + denominator;
return result;
}

}

__________________

Test.java

import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
Scanner sc1 = new Scanner(System.in);
while (true) {
//Getting the First Rational number From the user
System.out.println(":: Enter Rational No 1 ::");
System.out.print("Enter Numerator =");
int num1 = sc.nextInt();
System.out.print("Enter Denominator =");
int denom1 = sc.nextInt();
//Getting the second Rational number From the user
System.out.println(":: Enter Rational No 2 ::");
System.out.print("Enter Numerator =");
int num2 = sc.nextInt();
System.out.print("Enter Denominator =");
int denom2 = sc.nextInt();
  
//Creating the objects to Rational Class
Rational r = new Rational(num1, denom1);
Rational r1 = new Rational(num2, denom2);
System.out.println(" ");

System.out.println(" ** Adding two Rational Numbers **");
// Addition of two Rational Numbers
Rational r11=r.addRational(r1);
System.out.println("(" + r.toString() + ") +" + "(" + r1.toString()+ ") = " + r11.toString());
System.out.println(" ** Subtracting two Rational Numbers **");
Rational r12=r.subRational(r1);
System.out.println("(" + r.toString() + ") -" + "(" + r1.toString()+ ") = " + r12.toString());
System.out.println(" ** Multiplying two Rational Numbers **");
Rational r13=r.mulRational(r1);
System.out.println("(" + r.toString() + ") *" + "(" + r1.toString()+ ") = " + r13.toString());
System.out.println(" ** Dividing two Rational Numbers **");
Rational r14=r.divRational(r1);
System.out.println("(" + r.toString() + ") /" + "(" + r1.toString()+ ") = " + r14.toString());
  
  

  
  
System.out.print("Do you want to continue(Y/N):");
char c = sc1.next(".").charAt(0);
if (c == 'Y' || c == 'y')
continue;
else {
System.out.println(":: Program Exit ::");
break;
}
}
}
}

_____________________

Output:

:: Enter Rational No 1 ::
Enter Numerator =-35
Enter Denominator =5
:: Enter Rational No 2 ::
Enter Numerator =25
Enter Denominator =125

** Adding two Rational Numbers **
(-35.0/5.0) +(25.0/125.0) = -4250.0/625.0

** Subtracting two Rational Numbers **
(-35.0/5.0) -(25.0/125.0) = -4500.0/625.0

** Multiplying two Rational Numbers **
(-35.0/5.0) *(25.0/125.0) = -875.0/625.0

** Dividing two Rational Numbers **
(-35.0/5.0) /(25.0/125.0) = -4375.0/125.0

Do you want to continue(Y/N):N
:: Program Exit ::


_____________Could you rate me well.Plz .Thank You

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