Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

can someone fix the errors in this code? the name needs to be FractionDemo.java //author: Jazmine Tapia //date: 20 February 2023 //file: FractionDemo.java /* Lab

can someone fix the errors in this code? the name needs to be FractionDemo.java

//author: Jazmine Tapia //date: 20 February 2023 //file: FractionDemo.java

/* Lab 13 will also be using demonstation the the multiplication of two factors. */

//import statements for Scanner class import java.util.Scanner;

// Define a public class called Fraction public class FractionDemo {

// Define private instance variables for the numerator and denominator private int numerator; private int denominator;

// Define a constructor for the Fraction class that takes a numerator and denominator as arguments public FractionDemo(int numerator, int denominator) { // Set the denominator using the setDenominator() method defined below setDenominator(denominator); // Set the numerator this.numerator = numerator; // Reduce the fraction reduce(); // Adjust the signs of the numerator and denominator if necessary adjustSigns(); }

// Define a getter method for the numerator public int getNumerator() { return numerator; }

// Define a setter method for the numerator public void setNumerator(int numerator) { this.numerator = numerator; }

// Define a getter method for the denominator public int getDenominator() { return denominator; }

// Define a setter method for the denominator public void setDenominator(int denominator) { // Set the denominator using the setDenominator() method defined below setDenominator(denominator); // Reduce the fraction reduce(); // Adjust the signs of the numerator and denominator if necessary adjustSigns(); }

// Define a private method to set the denominator private void setDenominator(int denominator) { // If the denominator is zero, throw an exception if (denominator == 0) { throw new IllegalArgumentException("Denominator cannot be zero"); } // Set the denominator this.denominator = denominator; }

// Define a private method to calculate the greatest common divisor of two integers private int gcd(int a, int b) { if (b == 0) { return a; } else { return gcd(b, a % b); } }

// Define a public method to reduce the fraction public void reduce() { // Calculate the greatest common divisor of the numerator and denominator int gcd = gcd(numerator, denominator); // Divide both the numerator and denominator by the greatest common divisor to reduce the fraction numerator /= gcd; denominator /= gcd; }

// Define a private method to adjust the signs of the numerator and denominator if necessary private void adjustSigns() { // If the denominator is negative, multiply both the numerator and denominator by -1 to adjust the signs if (denominator < 0) { numerator *= -1; denominator *= -1; } }

// Define a public method to add two fractions public FractionDemo add(FractionDemo other) { public static void main(String[] args) { Scanner input = new Scanner(System.in);

// Get the numerator and denominator for the first fraction System.out.print("Enter the numerator of the first fraction: "); int num1 = input.nextInt(); System.out.print("Enter the denominator of the first fraction: "); int den1 = input.nextInt();

// Get the numerator and denominator for the second fraction System.out.print("Enter the numerator of the second fraction: "); int num2 = input.nextInt(); System.out.print("Enter the denominator of the second fraction: "); int den2 = input.nextInt();

// Create the two Fraction objects Fraction f1 = new Fraction(num1, den1); Fraction f2 = new Fraction(num2, den2);

// Display the fractions System.out.println("f1==" + f1); System.out.println("f2==" + f2);

// Perform arithmetic operations and display the results System.out.println(f1 + " + " + f2 + " = " + f1.add(f2)); System.out.println(f1 + " - " + f2 + " = " + f1.subtract(f2)); System.out.println(f1 + " * " + f2 + " = " + f1.multiply(f2)); System.out.println(f1 + " / " + f2 + " = " + f1.divide(f2)); } FractionDemo.java:110: error: illegal start of expression public static void main(String[] args) ^ FractionDemo.java:139: error: reached end of file while parsing } ^ 2 errors

The code has to be a combination of these two codes

//import statements for Scanner class import java.util.Scanner;

public class FractionDemo { public static void main(String[] args) { // Variables for two fractions int num1, num2, den1, den2;

// Create Scanner object to read keyboard input Scanner keyboard = new Scanner(System.in);

// Get integers for f1 numerator and denominator System.out.print("Enter the numerator of the first fraction: "); num1 = keyboard.nextInt(); System.out.print("Enter the denominator of the first fraction: "); den1 = keyboard.nextInt();

// Get integers for f2 numerator and denominator System.out.print("Enter the numerator of the second fraction: "); num2 = keyboard.nextInt(); System.out.print("Enter the denominator of the second fraction: "); den2 = keyboard.nextInt();

// Instantiate the two fractions using the input values Fraction f1 = new Fraction(num1, den1); Fraction f2 = new Fraction(num2, den2);

// Display the two fractions and their product System.out.println("f1 == " + f1); System.out.println("f2 == " + f2); System.out.println(f1 + " * " + f2 + " == " + f1.multiply(f2)); } }

// Define a class for fractions class Fraction { private int numerator; private int denominator;

// Constructor for Fraction class public Fraction(int num, int den) { this.numerator = num; this.denominator = den; // Check if denominator is zero and set it to 1 if true if (den == 0) { System.out.println("For Fraction: ( " + num + " / " + den + " ):"); System.out.println("Denominator cannot be zero; denominator value is being reset to one."); this.denominator = 1; // Reset denominator to 1 System.out.println("The Fraction is now: " + this); } }

// Define a method for multiplying two fractions public Fraction multiply(Fraction other) { int num = this.numerator * other.numerator; int den = this.denominator * other.denominator; return new Fraction(num, den); }

// Override the toString() method to display the Fraction objects as strings public String toString() { if (denominator == 1) return " ( " + numerator + " ) "; else return " ( " + numerator + " / " + denominator + " ) "; } }

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image_step_2

Step: 3

blur-text-image_step3

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Students also viewed these Databases questions

Question

2. How will you handle the situation?

Answered: 1 week ago