Comments are REQUIRED ; flow charts and Pseudocode are NOT REQUIRED . Directions
ID: 3563563 • Letter: C
Question
Comments are REQUIRED; flow charts and Pseudocode are NOT REQUIRED.
Directions
Points
The files must be called <LastNameFirstNameProg7.java>. (driver)
Fraction.java (handles the fractional numbers)
Example: DeweyKenProg7.java
Fraction.java
Ensure you include ALL files required to make your program compile and run.
I would like to see your .java files only.
Proper coding conventions required the first letter of the class start with a capital letter and the first letter of each additional word start with a capital letter.
5%
Basic Requirements
Write a driver and fraction class that performs addition, multiplication, prints the fraction, and prints as a double.
LastNameFirstNameProg7.java
Provide a driver class, LastNameFirstNameProg7, that demonstrates this Fraction class. The driver class should contain this main method:
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
Note that this demonstration driver does not call the accessor methods. That
Directions
Points
The files must be called <LastNameFirstNameProg7.java>. (driver)
Fraction.java (handles the fractional numbers)
Example: DeweyKenProg7.java
Fraction.java
Ensure you include ALL files required to make your program compile and run.
I would like to see your .java files only.
Proper coding conventions required the first letter of the class start with a capital letter and the first letter of each additional word start with a capital letter.
5%
Basic Requirements
Write a driver and fraction class that performs addition, multiplication, prints the fraction, and prints as a double.
LastNameFirstNameProg7.java
Provide a driver class, LastNameFirstNameProg7, that demonstrates this Fraction class. The driver class should contain this main method:
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
Note that this demonstration driver does not call the accessor methods. That
Explanation / Answer
=====================================
Program for Fraction.java
=====================================
public class Fraction {
private int numerator;
private int denominator;
public Fraction() {
numerator = 0;
denominator = 1;
}
Fraction(int n, int d) {
numerator = n;
denominator = d;
}
public Fraction add (Fraction f2) {
numerator = (numerator * f2.denominator) +
(f2.numerator * denominator);
denominator = (denominator * f2.denominator);
return this;
}
public Fraction multiply (Fraction f2) {
numerator = (numerator *f2.numerator);
denominator = (denominator * f2.denominator);
return this;
}
public void print(){
System.out.println(numerator+"/"+denominator);
}
public void printAsDouble(){
if(denominator == 0) {
System.out.println("infinity");
} else {
System.out.println((double)numerator/denominator);
}
}
}
=====================================
Program for LastNameFirstNameProg7.java
====================================
import java.util.Scanner;
public class LastNameFirstNameProg7 {
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
}
===============================
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.
1
0
infinity
================================================