Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

adding two fractions in python

I am trying to add two fractions in python

if input 1/4 + 1/4, I am expecting 1/2 result

I built a fraction class with an __add__ method for addition

from fractions import gcd

class fraction:
    def __init__(self, numerator, denominator):
        self.num = numerator
        self.deno = denominator
    def __add__(self, other):
        self.sumOfn = self.num + other.num
        self.sumOfd = gcd(self.deno,other.deno)
        return(self.sumOfn, self.sumOfd)



print(fraction(1,4)+fraction(1,4))

However I am getting 2,4 as output, which is actually 1/2, just not simplified. How could I fix that problem ?

like image 651
Mozein Avatar asked Oct 15 '25 18:10

Mozein


2 Answers

As mentioned by @icodez

from fractions import Fraction
print(Fraction(1,4)+Fraction(1,4))
like image 84
Smart Manoj Avatar answered Oct 18 '25 07:10

Smart Manoj


The general approach to simplifying fractions is to find the greatest common divisor of the numerator and denominator and then divide both of them by it

like image 45
Anthony Sottile Avatar answered Oct 18 '25 06:10

Anthony Sottile



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!