class Rational: def init(self, numerator, denominator): self.numerator = numerator self.denominator = denominator
def __add__(self, other):
# Calculate the numerator and denominator for addition
numerator = self.numerator * other.denominator + other.numerator * self.denominator
denominator = self.denominator * other.denominator
return Rational(numerator, denominator)
def __sub__(self, other):
# Calculate the numerator and denominator for subtraction
numerator = self.numerator * other.denominator - other.numerator * self.denominator
denominator = self.denominator * other.denominator
return Rational(numerator, denominator)
def __mul__(self, other):
# Calculate the numerator and denominator for multiplication
numerator = self.numerator * other.numerator
denominator = self.denominator * other.denominator
return Rational(numerator, denominator)
def __truediv__(self, other):
# Calculate the numerator and denominator for division
numerator = self.numerator * other.denominator
denominator = self.denominator * other.numerator
return Rational(numerator, denominator)
def display(self):
# Simplify the rational number
gcd = self.gcd(self.numerator, self.denominator)
simplified_numerator = self.numerator // gcd
simplified_denominator = self.denominator // gcd
print(f"{simplified_numerator} / {simplified_denominator}")
def gcd(self, a, b):
# Calculate the greatest common divisor using Euclidean algorithm
while b != 0:
a, b = b, a % b
return aprint("Get input for the first rational number") numerator1 = int(input()) denominator1 = int(input())
print("Create the first rational number object") rational1 = Rational(numerator1, denominator1)
print("Get input for the second rational number") numerator2 = int(input()) denominator2 = int(input())
print("Create the second rational number object") rational2 = Rational(numerator2, denominator2)
print("Perform addition, subtraction, multiplication, and division") result_add = rational1 + rational2 result_sub = rational1 — rational2 result_mul = rational1 * rational2 result_div = rational1 / rational2
result_add.display() result_sub.display() result_mul.display() result_div.display()








