Add another public method called add() to TestFraction1 class. This method adds another fraction to the ‘calling object’. Thus, the method will take a Fraction class object as a parameter, add this parameter fraction to the calling object (fraction), and return a Fraction object as a result. HINT: we can use cross multiplication to determine the numerator of the resultant Fraction. The denominator of the resultant Fraction is simply the multiplication of the denominators of the two other Fractions. import java.util.Scanner; //test program public class TestFraction1 { public static void main(String[] args) { //create a Scanner object Scanner in = new Scanner(System.in); //create new fraction Fraction frac = new Fraction(); //declare numerator and denominator int n=1,d; System.out.print("Enter Fraction's Numerator: "); //input numerator n = in.nextInt(); System.out.print("Enter Fraction's Denominator: "); //input denominator d = in.nextInt(); //loop execute until the numerator is negative while(n>=0) { //call input with n and d frac.input(n, d); //call display frac.display(); System.out.print("Enter Fraction's Numerator: "); //input numerator n = in.nextInt(); System.out.print("Enter Fraction's Denominator: "); //input denominator d = in.nextInt(); frac.setNumerator(n); frac.setDenominator(d); } } } Step 3 Fraction.java: class Fraction{ private double numerator; private double denominator; //Getter and setter method for numerator public double getDecimalValue(){ return numerator/denominator; } public double getNumerator() { return numerator; } public void setNumerator(double numerator) { this.numerator = numerator; } //Getter and setter method for denominator public double getDenominator() { return denominator; } public void setDenominator(double denominator) { this.denominator = denominator; } //method to initialize numerator and denominator public void input(int num, int den) { numerator = num; //check if denominator is not zero if (den != 0) { denominator = den; } else { System.out.println("Invalid denominator!!"); System.exit(0); } } //method to display fraction public void display() { double n, d; n = numerator; d = denominator; //if the denominator is less than 0 then swap the sign of both numerator and denominator if(denominator<0) { n= (-1)*numerator; d=(-1)*denominator; System.out.print(n + "/" + d); System.out.println(" = " + n/d); } else { System.out.print(numerator + "/" + denominator); System.out.println(" = " + n/d); } } }
Add another public method called add() to TestFraction1 class. This method adds another fraction to the ‘calling object’. Thus, the method will take a Fraction class object as a parameter, add this parameter fraction to the calling object (fraction), and return a Fraction object as a result. HINT: we can use cross multiplication to determine the numerator of the resultant Fraction. The denominator of the resultant Fraction is simply the multiplication of the denominators of the two other Fractions.
import java.util.Scanner;
//test program
public class TestFraction1
{
public static void main(String[] args)
{
//create a Scanner object
Scanner in = new Scanner(System.in);
//create new fraction
Fraction frac = new Fraction();
//declare numerator and denominator
int n=1,d;
System.out.print("Enter Fraction's Numerator: ");
//input numerator
n = in.nextInt();
System.out.print("Enter Fraction's Denominator: ");
//input denominator
d = in.nextInt();
//loop execute until the numerator is negative
while(n>=0)
{
//call input with n and d
frac.input(n, d);
//call display
frac.display();
System.out.print("Enter Fraction's Numerator: ");
//input numerator
n = in.nextInt();
System.out.print("Enter Fraction's Denominator: ");
//input denominator
d = in.nextInt();
frac.setNumerator(n);
frac.setDenominator(d);
}
}
}
Step 3
Fraction.java:
class Fraction{
private double numerator;
private double denominator;
//Getter and setter method for numerator
public double getDecimalValue(){
return numerator/denominator;
}
public double getNumerator() {
return numerator;
}
public void setNumerator(double numerator) {
this.numerator = numerator;
}
//Getter and setter method for denominator
public double getDenominator() {
return denominator;
}
public void setDenominator(double denominator) {
this.denominator = denominator;
}
//method to initialize numerator and denominator
public void input(int num, int den)
{
numerator = num;
//check if denominator is not zero
if (den != 0) {
denominator = den;
}
else {
System.out.println("Invalid denominator!!");
System.exit(0);
}
}
//method to display fraction
public void display()
{
double n, d;
n = numerator;
d = denominator;
//if the denominator is less than 0 then swap the sign of both numerator and denominator
if(denominator<0)
{
n= (-1)*numerator;
d=(-1)*denominator;
System.out.print(n + "/" + d);
System.out.println(" = " + n/d);
}
else
{
System.out.print(numerator + "/" + denominator);
System.out.println(" = " + n/d);
}
}
}
Trending now
This is a popular solution!
Step by step
Solved in 7 steps with 6 images