diff options
author | Pablo Astigarraga <poteland@gmail.com> | 2010-04-05 12:20:08 (GMT) |
---|---|---|
committer | Pablo Astigarraga <poteland@gmail.com> | 2010-04-05 12:20:08 (GMT) |
commit | b30b3ca9f55902b959c2ce1e7bd22db2d0bf21ac (patch) | |
tree | 5cee35895f433a25d0cf853803fe11184547a8c8 | |
parent | f1101069bcb3e15442944b4ec2058727a72f72b1 (diff) |
Fixed substraction/addition issue
-rw-r--r-- | fracciones.activity/fractionlogic.py | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/fracciones.activity/fractionlogic.py b/fracciones.activity/fractionlogic.py index d97e33d..ee24011 100644 --- a/fracciones.activity/fractionlogic.py +++ b/fracciones.activity/fractionlogic.py @@ -96,6 +96,7 @@ def calculate(fraction_1,fraction_2,operator): result = divide(fraction_1,fraction_2) return result + def add(fraction_1,fraction_2): result = Fraction() if fraction_1.denominator == fraction_2.denominator : @@ -103,10 +104,10 @@ def add(fraction_1,fraction_2): result.denominator = fraction_1.denominator return result else: - lcm = lcm(fraction_1.denominator,fraction_2.numerator) - result.denominator = lcm - alt_fraction_1 = fraction_1.numerator * lcm - alt_fraction_2 = fraction_2.numerator * lcm + mcm = lcm(fraction_1.denominator,fraction_2.numerator) + result.denominator = mcm + alt_fraction_1 = fraction_1.numerator * (fraction_1.denominator / mcm) + alt_fraction_2 = fraction_2.numerator * (fraction_2.denominator / mcm) result.numerator = alt_fraction_1 + alt_fraction_2 return result @@ -119,10 +120,10 @@ def substract(fraction_1,fraction_2): return result else: lcm = lcm(fraction_1.denominator,fraction_2.numerator) - result.denominator = lcm - alt_fraction_1 = fraction_1.numerator * lcm - alt_fraction_2 = fraction_2.numerator * lcm - result.numerator = alt_fraction_1 + alt_fraction_2 + result.denominator = mcm + alt_fraction_1 = fraction_1.numerator * (fraction_1.denominator / mcm) + alt_fraction_2 = fraction_2.numerator * (fraction_2.denominator / mcm) + result.numerator = alt_fraction_1 - alt_fraction_2 return result def multiply(fraction_1,fraction_2): |