Greetings,

I'm working on a class project for fractions and I'm stuck and cannot figure out where to go from here. We have a mandatory driver file we aren't supposed to change. See below for example output and the output I am actually getting.

**Sample Output**

Enter numerator; then denominator.

5

8

5/8

Enter numerator; then denominator.

4

10

4/10

Sum:

82/80

1.025

Product:

20/80

0.25

Enter numerator; then denominator.

6

0

infinity

Driver file

```
import java.util.Scanner;
public class NathanialProg7
{
public static void main(String[] args)
{
Scanner stdIn = new Scanner(System.in);
Fraction c, d, x; // Fraction objects
System.out.println("Enter numerator; then denominator.");
c = new Fraction(stdIn.nextInt(), stdIn.nextInt());
c.print();
System.out.println("Enter numerator; then denominator.");
d = new Fraction(stdIn.nextInt(), stdIn.nextInt());
d.print();
x = new Fraction(); // create a fraction for number 0
System.out.println("Sum:");
x.add(c).add(d);
x.print();
x.printAsDouble();
x = new Fraction(1, 1); // create a fraction for number 1
System.out.println("Product:");
x.multiply(c).multiply(d);
x.print();
x.printAsDouble();
System.out.println("Enter numerator; then denominator.");
x = new Fraction(stdIn.nextInt(), stdIn.nextInt());
x.printAsDouble();
} // end main
} // end public class NathanialProg7
```

My Fraction class file

```
public class Fraction
{
private int numerator;
private int denominator;
private double solution; // numerator divided by denominator
//*************************************
public Fraction(int n) // Fraction method #1
{
this(n,1); // This statement used to call other constructor
}
//*************************************
public Fraction(int n, int d) // Fraction method #2
{
numerator = n;
denominator = d;
solution = (double) numerator / denominator;
}
//*************************************
public Fraction() // Fraction method #3 added so the third fraction object "x" works
{}
//*************************************
public int getNumerator() // accessor method for numerator
{
return numerator;
}
//*************************************
public int getDenominator() // accessor method for denominator
{
return denominator;
}
//*************************************
public Fraction add(Fraction frac)
{
Fraction sum; // declaring a new Fraction type which will be returned from this method
int n = numerator * frac.getDenominator() + denominator * frac.getNumerator(); // this int n will be the numerator for the Fraction sum, creates a new numerator by algebraicly adding fractions
int d = denominator * frac.getDenominator(); // this int d will be the denominator for the Fraction sum, creates a new denominator by algebraicly adding fractions
sum = new Fraction(n, d); // initializing the sum by invoking the Fraction(int n, int d) using the n and d integers
return sum; // allows for continious adding of fractions
}
//*************************************
public Fraction multiply(Fraction frac)
{
Fraction product; // declaring a new Fraction type which will be returned from this method
int n = frac.getNumerator() * numerator; // this int n will be the numerator for the Fraction product, creates a new numerator by multiplying numerators
int d = frac.getDenominator() * denominator; // this int d will be the denominator for the Fraction product, creates a new denominator by multiplyig denominators
product = new Fraction(n, d); // initializing the sum by invoking the Fraction(int n, int d) using n and d integers
return product; // allows for continious multipying of fractions
}
//*************************************
public void print()
{
System.out.println(numerator + "/" + denominator); // print line for numerator over denominator
}
//*************************************
public void printAsDouble()
{
System.out.println(solution); // print line for printing fraction solution as a double
}
} // End public class Fraction
```

My output:

Enter numerator; then denominator.

2

3

2/3

Enter numerator; then denominator.

7

8

7/8

Sum:

0/0

0.0

Product:

1/1

1.0

Enter numerator; then denominator.

6

0

Infinity