代码拉取完成,页面将自动刷新
# -*- coding: utf-8 -*-
# @Time : 2018/3/26 20:11
# @Author : Lv Zhangrun
# @Site :
# @File : Fraction.py
# @Software: PyCharm
class Fraction:
def __init__(self, numerator, denominator):
self.numerator = numerator
self.denominator = denominator
self.temp = Fraction
def plus(self, fraction):
self.temp = Fraction(0, 0)
self.temp.numerator=int(self.numerator)*int(fraction.denominator)+int(self.denominator)*int(fraction.numerator)
self.temp.denominator=int(self.denominator)*int(fraction.denominator)
return self.temp
def minus(self,fraction):
self.temp = Fraction(0, 0)
self.temp.numerator = int(self.numerator) * int(fraction.denominator) - int(self.denominator) * int(fraction.numerator)
self.temp.denominator = int(self.denominator) * int(fraction.denominator)
return self.temp
def multiply(self,fraction):
self.temp = Fraction(0, 0)
self.temp.numerator = int(self.numerator) * int(fraction.numerator)
self.temp.denominator = int(self.denominator) * int(fraction.denominator)
return self.temp
def divide(self,fraction):
self.temp = Fraction(0, 0)
self.temp.numerator = int(self.numerator)*int(fraction.denominator)
self.temp.denominator = int(self.denominator)* int(fraction.numerator)
return self.temp
def getResult(self):
if self.numerator==0:
return "0"
n = min(self.numerator, self.denominator)
if n<0:
n=-n
maxCommonDivisor = 1 # 公约数
for i in range(1, n + 1): # 找最大公约数
if self.numerator % i == 0 and self.denominator % i == 0:
maxCommonDivisor = i
a = int(self.numerator / maxCommonDivisor) # 约分
b = int(self.denominator / maxCommonDivisor)
if a == b:
return 1
elif b == 1:
return a
elif a > b:
if a%b ==0:
return str(int(a/b))
else:
return str(int(a / b)) + "’" + str(int(a % b)) + "/" + str(b)
elif a<0 and -a>b:
if -a%b ==0:
return str(int(a/b))
else:
return "-"+str(int(-a / b)) + "’" + str(int(-a % b)) + "/" + str(b)
else:
return str(a) + "/" + str(b)
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。