Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
38 changes: 33 additions & 5 deletions Fractions/MyFraction.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,28 +9,56 @@ def __str__(self):
def __add__(self, fraction):
self.sumNum = self.numerator + fraction.numerator
self.sumDen = self.gcf(self.denominator, fraction.denominator)
self.sumgcd = self.gcf(self.sumNum,self.sumDen)
self.sumNum = self.sumNum // self.sumgcd
self.sumDen = self.sumDen // self.sumgcd
answer = MyFraction(self.sumNum, self.sumDen)
return answer

def __sub__(self, fraction):
answer = "Calculate the answer. The answer will be a fraction"
self.subNum = self.numerator*fraction.denominator - self.denominator*fraction.numerator
self.subDen = self.denominator*fraction.denominator
self.subgcd = self.gcf(self.subNum ,self.subDen)

if self.subgcd==0:
return MyFraction(0,0)
self.subNum = self.subNum // self.subgcd
self.subDen = self.subDen // self.subgcd

answer = MyFraction(self.subNum ,self.subDen)
return answer

def __mul__(self, fraction):
answer = "Calculate the answer. The answer will be a fraction"
self.mulNum = self.numerator*fraction.numerator
self.mulDen = self.denominator*fraction.denominator
self.mulgcd = self.gcf(self.mulNum,self.mulDen)

if self.mulgcd==0:
return MyFraction(0,0)
self.mulNum = self.mulNum // self.mulgcd
self.mulDen = self.mulDen // self.mulgcd
answer = MyFraction(self.mulNum,self.mulDen)
return answer

def __truediv__(self, fraction):
answer = "Calculate the answer. The answer will be a fraction"
self.divNum = self.numerator*fraction.denominator
self.divDen = self.denominator*fraction.numerator
self.divgcd = self.gcf(self.divNum,self.divDen)
if self.divgcd==0:
return MyFraction(0,0)
self.divNum = self.divNum // self.divgcd
self.divDen = self.divDen // self.divgcd
answer = MyFraction(self.divNum,self.divDen)
return answer

def gcf(self, x, y):
if x > y:
smaller = y
else:
smaller = x
gcd = 0
for i in range(1, smaller + 1):
if((x % i == 0) and (y % i == 0)):
gcf = i
return gcf
gcd = i
return gcd

12 changes: 6 additions & 6 deletions Fractions/Test.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,13 @@ def main():
addResult = fraction1 + fraction2
print("Addition result was: " + str(addResult) + ". The correct answer is: 1/1 or 2/2")

#subResult = fraction2 - fraction1
#print("Subtraction result was: " + subResult + ". The correct answer is: 0/0")
subResult = fraction2 - fraction1
print("Subtraction result was: " + str(subResult) + ". The correct answer is: 0/0")

#multResult = fraction1 * fraction2
#print("Multiplication result was: " + multResult + ". The correct answer is: 1/4")
multResult = fraction1 * fraction2
print("Multiplication result was: " + str(multResult) + ". The correct answer is: 1/4")

#divResult = fraction1 / fraction2
#print("Division result was: " + divResult + ". The correct answer is: 1/1")
divResult = fraction1 / fraction2
print("Division result was: " + str(divResult) + ". The correct answer is: 1/1")

main()
Binary file added Fractions/__pycache__/MyFraction.cpython-38.pyc
Binary file not shown.