以下为一个有理数类,一个有理数由分子和分母组成,目前定义了一个输出函数
十七、编写一个加法函数,可以接收另一个有理数,与自身的值相加
十八、编写一个乘法函数,同理接收另一个有理数,与自身的值相乘
十九、编写一个判断相等函数,接收另一个有理数,返回自身与这个有理数的大小关系
二十、创建几个有理数 a:3/4,b:4/5,c:5/6,d:1
对a进行操作:与b相加,再与c相乘,最后与d比较大小
from fractions import Fraction#以分数的形式计算
class Rational(object):
def __init__(self,zi,mu):
self.zi = zi #分子
self.mu = mu #分母
#打印这个有理数
def print_rational(self):
f =Fraction(str(self.zi) + '/' + str(self.mu))
print(f)
#与另一个有理数相加
def add(self,a):
f1 = Fraction(str(self.zi*a.mu+a.zi*self.mu)+'/'+str(self.mu*a.mu))
print(f1)
#与另一个有理数相乘
def multi(self,b):
f = Fraction(str(self.zi*b.zi) + '/' + str(self.mu*b.mu))
print(f)
#与另一个有理数比较大小
def comp(self,c):
f =Fraction(str(self.zi) + '/' + str(self.mu))
f1 =Fraction(str(d.zi)+'/'+str(d.mu))
if f > f1:
print(f, '>', f1 )
elif f < f1:
print(f, '<', f1)
else:
print(f, '=', f1)
a = Rational(3, 4)
b = Rational(4, 5)
c = Rational(5, 6)
d = Rational(1, 1)
a.print_rational()#打印a
a.add(b)#############睁开眼睛看看哦!!!!!!!!括号里面是B前面是a,函数接受了b的值,同时继承了a的取值
a.multi(c)
a.comp(d)