Question: using python use the fraction.py file, Complete the following: Modify the Constructor for the Fraction class so that GCD is sued to reduce fractions immediately.
using python
use the fraction.py file, Complete the following:
Modify the Constructor for the Fraction class so that GCD is sued to reduce fractions immediately. This means that the __add__ function no longer needs to reduce.
Implement the remaining simple arithmetic operators (__sub__, __mul__, and __truediv__).
Implement the remaining relational operators (__gt__, __ge__, __lt__, __le__, and __ne__).
Modify the constructor for the Fraction class so that it checks to make sure that the numerator and denominator are both integers. If either is not an integer the constructor should raise an exception.
class Fraction: def __init__(self, top, bottom): self.num = top self.den = bottom
def __str__(self): return str(self.num) + "/" + str(self.den)
def gcd(self, m, n): while m % n != 0: oldm = m oldn = n m = oldn n = oldm % oldn return n def __add__(self, other): newnum = self.num * other.den + \ self.den * other.num newden = self.den * other.den common = self.gcd(newnum, newden) return Fraction(newnum // common, newden // common)
def __eq__(self, other): firstNum = self.num * other.den secondNum = other.num * self.den return firstNum == secondNum
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
