Ai
1 Star 0 Fork 0

lvzr/Four_Arithmetic_Operations for python

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
Fraction.py 2.33 KB
一键复制 编辑 原始数据 按行查看 历史
lvzr 提交于 2018-03-31 11:14 +08:00 . push project
# -*- 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)
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Python
1
https://gitee.com/lzrun/Four_Arithmetic_Operations-for-python.git
git@gitee.com:lzrun/Four_Arithmetic_Operations-for-python.git
lzrun
Four_Arithmetic_Operations-for-python
Four_Arithmetic_Operations for python
master

搜索帮助