Modify Fraction Class Finish coding the class definition for the member function
ID: 3776113 • Letter: M
Question
Modify Fraction Class
Finish coding the class definition for the member functions Multiply, Difference and Division as well as the display function of the class to show the appropriate fractional results when called on in main.
Code the remaining functions calls as commented in main.
Starter source:
public class Fraction
{
int num, den;
//default constructor
public Fraction()
{
num = 1;
den = 1;
}
//overloaded constructor
public Fraction(int n, int d)
{
num = n;
if (d==0)
{
System.out.println( "error- division by zero");
System.exit(0); // termimate program if division by 0
}
else
den = d;
}
public Fraction Sum(Fraction someFraction)
{
int n = someFraction.den+someFraction.num*den;
int d = den*someFraction.den;
return new Fraction(n/gcd(n,d),d/gcd(n,d)); //return refreshed member values
}
public Fraction Difference(Fraction someFraction)
{
//code function definition
return null;
}
public Fraction Multiply(Fraction someFraction)
{
//code function definition
return null;
}
public Fraction Division(Fraction someFraction)
{
//code function definition
return null;
}
//find and return greatest common denominator
public int gcd(int n, int d)
{
int remainder;
while (d != 0)
{
remainder = n % d;
n = d;
d = remainder;
}
return n;
}
public void display() // Display method
{
}
public static void main(String [] args)
{
Fraction frac1 = new Fraction(1,2);
Fraction frac2 = new Fraction(1,4);
Fraction fracResult = new Fraction();
fracResult = frac1.Sum(frac2); // Result sb 3/4
fracResult.display();
//finish coding to call the Difference, Multiply and division functions
//include also the call to the display function for additional results
}//end main
}//end class
Explanation / Answer
public class Fraction {
int num, den;
//default constructor
public Fraction() {
num = 1;
den = 1;
}
//overloaded constructor
public Fraction(int n, int d) {
num = n;
if (d == 0) {
System.out.println("error- division by zero");
System.exit(0); // termimate program if division by 0
} else {
den = d;
}
}
public Fraction Sum(Fraction someFraction) {
int n = someFraction.den + someFraction.num * den;
int d = den * someFraction.den;
return new Fraction(n / gcd(n, d), d / gcd(n, d)); //return refreshed member values
}
public Fraction Difference(Fraction someFraction) {
int n = num * someFraction.den - someFraction.num * den;
int d = den * someFraction.den;
return new Fraction(n,d);
}
public Fraction Multiply(Fraction someFraction) {
int n = someFraction.den * num;
int d = someFraction.num * den;
return new Fraction(n, d);
}
public Fraction Division(Fraction someFraction) {
int n = someFraction.num * num;
int d = someFraction.den * den;
return new Fraction(n,d);
}
//find and return greatest common denominator
public int gcd(int n, int d) {
int remainder;
while (d != 0) {
remainder = n % d;
n = d;
d = remainder;
}
return n;
}
public void display() // Display method
{
System.out.println(this.num + "/" + this.den);
}
public static void main(String[] args) {
Fraction frac1 = new Fraction(1, 2);
Fraction frac2 = new Fraction(1, 4);
Fraction fracResult = new Fraction();
fracResult = frac1.Sum(frac2); // Result sb 3/4
fracResult.display();
// fracResult = frac1.Difference(frac2);
// fracResult.display();
// fracResult = frac1.Multiply(frac2);
// fracResult.display();
// fracResult = frac1.Division(frac2);
// fracResult.display();
//finish coding to call the Difference, Multiply and division functions
//include also the call to the display function for additional results
}//end main
}//end class
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.